On 2015.09.02 at 18:27 +0800, Xiao Guangrong wrote: > > > On 09/02/2015 05:38 PM, Markus Trippelsdorf wrote: > > On 2015.09.02 at 17:17 +0800, Xiao Guangrong wrote: > >>> > >>> No. PAT is of course enabled and booting is successful sometimes even > >>> with the BUG() in allback_mtrr_type(). I suspect a setup (timing) issue. > >> > >> Thanks for your confirmation. > >> > >>> > >>> markus@x4 linux % cat .config | grep X86_PAT > >>> CONFIG_X86_PAT=y > >>> markus@x4 linux % dmesg | grep PAT > >>> [ 0.000000] x86/PAT: Configuration [0-7]: WB WC UC- UC WB WC UC- WT > >> > >> Strange, BP processor has already set WC to PAT1, however KVM does not read it out > >> from PAT MSR on its local CPU. > >> > >> Hmm... PAT default values do not include WC, it seems initing PAT on SP has not > >> finished after module_init()? > >> > >> Could please apply this diff and test it again? > > > > (Your patch was malformed.) > > > > [ 2.138098] kvm: Nested Virtualization enabled > > [ 2.138153] kvm: Nested Paging enabled > > [ 2.138204] KVM PAT: 0x7040600070406. > > So the PAT is the value after CPU reset, it's likely PAT is not initialized on > the local CPU. Could it be a simple AMD/INTEL difference. I'm running a AMD CPU and I see many !use_intel() in if statements in arch/x86/kernel/cpu/mtrr/main.c... -- Markus -- To unsubscribe from this list: send the line "unsubscribe kvm" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html