On 05/11/18 16:25, Ian Jackson wrote: > Andrew Cooper writes ("[Xen-devel] MSR load lists on Harpertown"): >> I realise this is an old CPU, but I've I've encountered a weird failure >> on it. > ... >> However, given this behaviour, I can't think of any way to context >> switch NX properly, and leave 64bit guests in a working state. >> >> Do you have any suggestions? > ISTM that Xen should run on these old CPUs and also that it should > work, ideally, even if the microcode is buggy. > > So presumaly the right answer is to simply disable NX for the guest > completely ?
As you've observed, when SCE doesn't work, everything is fully hosed. However, disabling NX on that CPU won't fix the problem, because the problem appears to be using the MSR load list. Without a microcode fix (if indeed this is a microcode issue, but given how much of vmentry is, I'd be surprised if it is something else), the only fix I can see is to effectively revert the change to use MSR load lists. However, I really don't want to do this unilaterally, because it will break NX handling on all Intel hardware, and reintroduce a wart into the context switch code which I thought I'd excised properly. ~Andrew _______________________________________________ Xen-devel mailing list Xen-devel@lists.xenproject.org https://lists.xenproject.org/mailman/listinfo/xen-devel