X-Git-Url: http://v3vee.org/palacios/gitweb/gitweb.cgi?a=blobdiff_plain;f=palacios%2Finclude%2Fpalacios%2Fsvm.h;h=333d38e6086e1e09a9128d357e455bed1c7503e3;hb=068d7e66db537f981fde19a098a12e4390fa3de4;hp=97d6bd305ebbfd8d379f7730be9d66831336f2e3;hpb=4f7c3b759e3889870c5b5e7d09b3ffcc168e5632;p=palacios.git diff --git a/palacios/include/palacios/svm.h b/palacios/include/palacios/svm.h index 97d6bd3..333d38e 100644 --- a/palacios/include/palacios/svm.h +++ b/palacios/include/palacios/svm.h @@ -1,27 +1,42 @@ -/* Northwestern University */ -/* (c) 2008, Jack Lange */ +/* + * This file is part of the Palacios Virtual Machine Monitor developed + * by the V3VEE Project with funding from the United States National + * Science Foundation and the Department of Energy. + * + * The V3VEE Project is a joint project between Northwestern University + * and the University of New Mexico. You can find out more at + * http://www.v3vee.org + * + * Copyright (c) 2008, Jack Lange + * Copyright (c) 2008, The V3VEE Project + * All rights reserved. + * + * Author: Jack Lange + * + * This is free software. You are permitted to use, + * redistribute, and modify it as specified in the file "V3VEE_LICENSE". + */ #ifndef __SVM_H #define __SVM_H -#include #ifdef __V3VEE__ +#include + + #include #include -#define CPUID_FEATURE_IDS 0x80000001 -#define CPUID_FEATURE_IDS_ecx_svm_avail 0x00000004 +#define CPUID_EXT_FEATURE_IDS_ecx_svm_avail 0x00000004 #define CPUID_SVM_REV_AND_FEATURE_IDS 0x8000000a #define CPUID_SVM_REV_AND_FEATURE_IDS_edx_svml 0x00000004 #define CPUID_SVM_REV_AND_FEATURE_IDS_edx_np 0x00000001 - -#define EFER_MSR 0xc0000080 #define EFER_MSR_svm_enable 0x00001000 /************/ @@ -61,12 +76,12 @@ #define SVM_HANDLER_ERROR 0x1 #define SVM_HANDLER_HALT 0x2 -#endif - -void Init_SVM(struct vmm_ctrl_ops * vmm_ops); -int is_svm_capable(); +void v3_init_svm_cpu(int cpu_id); +void v3_init_svm_hooks(struct v3_ctrl_ops * vmm_ops); +int v3_is_svm_capable(); +#endif