On 9/23/21 2:17 PM, Marc Orr wrote: >>>> + >>>> +struct page *snp_safe_alloc_page(struct kvm_vcpu *vcpu) >>>> +{ >>>> + unsigned long pfn; >>>> + struct page *p; >>>> + >>>> + if (!cpu_feature_enabled(X86_FEATURE_SEV_SNP)) >>>> + return alloc_page(GFP_KERNEL_ACCOUNT | __GFP_ZERO); > Continuing my other comment, above: if we introduce a > `snp_globally_enabled` var, we could use that here, rather than > `cpu_feature_enabled(X86_FEATURE_SEV_SNP)`. Maybe I am missing something, what is wrong with cpu_feature_enabled(...) check ? It's same as creating a global variable. The feature enabled bit is not set if the said is not enabled. See the patch #3 [1] in this series. [1] https://lore.kernel.org/linux-mm/YUN+L0dlFMbC3bd4@xxxxxxx/T/#m2ac1242b33abfcd0d9fb22a89f4c103eacf67ea7 thanks