+#ifdef CONFIG_X86_64
is this #ifdeffery neccesary?
Yes, otherwise build fails on 32 bit.
I assume kvm_cpu_cap_has(X86_FEATURE_FRED) is always false for !CONFIG_X86_64. Looks most of FRED changes in core kernel don't have such #ifdeffery.
Because it's not a compile time false, instead false from runtime.
/* Per-CPU FRED MSRs */
Please explain why these six MSRs are updated here and why only they are updated in this comment.
The explanation is kind of implicit "per-CPU", I will make it more explicit.
Thanks! Xin