On Tue, 2023-06-06 at 17:18 +0800, Binbin Wu wrote: > Move CR4.LAM_SUP out of CR4_RESERVED_BITS and its reservation depends on vcpu > supporting LAM feature or not. Leave the bit intercepted to avoid vmread every > time when KVM fetches its value, with the expectation that guest won't toggle > the bit frequently. KVM only needs to do vmread once to cache guest's CR4, and presumable vmread is a lot cheaper than a VMEXIT. So I don't see the value of intercepting it if there's no need to do. But presumably I think we cannot allow guest to own this bit because KVM wants to return a valid CR4 if LAM isn't exposed to guest? Otherwise guest can still set this bit even LAM isn't exposed to guest. Am I missing something? If not, your justification of intercepting this bit isn't correct and needs update.