Lines Matching full:cap
45 #define EPT_SUPPORTS_EXEC_ONLY(cap) ((cap) & (1UL << 0)) argument
46 #define EPT_PWL4(cap) ((cap) & (1UL << 6)) argument
47 #define EPT_MEMORY_TYPE_WB(cap) ((cap) & (1UL << 14)) argument
48 #define EPT_PDE_SUPERPAGE(cap) ((cap) & (1UL << 16)) /* 2MB pages */ argument
49 #define EPT_PDPTE_SUPERPAGE(cap) ((cap) & (1UL << 17)) /* 1GB pages */ argument
50 #define INVEPT_SUPPORTED(cap) ((cap) & (1UL << 20)) argument
51 #define AD_BITS_SUPPORTED(cap) ((cap) & (1UL << 21)) argument
52 #define INVVPID_SUPPORTED(cap) ((cap) & (1UL << 32)) argument
55 #define INVVPID_ALL_TYPES_SUPPORTED(cap) \ argument
56 (((cap) & INVVPID_ALL_TYPES_MASK) == INVVPID_ALL_TYPES_MASK)
59 #define INVEPT_ALL_TYPES_SUPPORTED(cap) \ argument
60 (((cap) & INVEPT_ALL_TYPES_MASK) == INVEPT_ALL_TYPES_MASK)
79 uint64_t cap; in ept_init() local
81 cap = rdmsr(MSR_VMX_EPT_VPID_CAP); in ept_init()
90 if (!EPT_PWL4(cap) || in ept_init()
91 !EPT_MEMORY_TYPE_WB(cap) || in ept_init()
92 !INVVPID_SUPPORTED(cap) || in ept_init()
93 !INVVPID_ALL_TYPES_SUPPORTED(cap) || in ept_init()
94 !INVEPT_SUPPORTED(cap) || in ept_init()
95 !INVEPT_ALL_TYPES_SUPPORTED(cap)) in ept_init()
102 if (use_superpages && EPT_PDE_SUPERPAGE(cap)) in ept_init()
107 if (use_hw_ad_bits && AD_BITS_SUPPORTED(cap)) in ept_init()
114 if (use_exec_only && EPT_SUPPORTS_EXEC_ONLY(cap)) in ept_init()