[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index] Re: [Xen-devel] [PATCH-for-4.11] xpti: fix bug in double fault handling
>>> On 23.04.18 at 13:37, <jgross@xxxxxxxx> wrote: > When entering the hypervisor via the double fault handler resetting > xen_cr3 was missing. This led to switching to pv_cr3 when returning > from the next following interrupt, e.g. after re-enabling interrupts > in machine_restart(). Pointing at bad behavior to justify a change is not very helpful, I think. Andrew's argument of exception handling wanting to continue to work even after a #DF is a better one imo. > --- a/tools/firmware/xen-dir/shim.config > +++ b/tools/firmware/xen-dir/shim.config > @@ -1,6 +1,6 @@ > # > # Automatically generated file; DO NOT EDIT. > -# Xen/x86 4.11-unstable Configuration > +# Xen/x86 4.11-rc Configuration > # > CONFIG_X86_64=y > CONFIG_X86=y Stray change? > --- a/xen/arch/x86/x86_64/entry.S > +++ b/xen/arch/x86/x86_64/entry.S > @@ -772,6 +772,7 @@ ENTRY(double_fault) > jns .Ldblf_cr3_load > neg %rbx > .Ldblf_cr3_load: > + movq $0, STACK_CPUINFO_FIELD(xen_cr3)(%r14) > mov %rbx, %cr3 > .Ldblf_cr3_okay: Just like for the other code paths this write should be after the CR3 load, or else NMI or #MC occurring between the two would fail to update CR3. Jan _______________________________________________ Xen-devel mailing list Xen-devel@xxxxxxxxxxxxxxxxxxxx https://lists.xenproject.org/mailman/listinfo/xen-devel
|
Lists.xenproject.org is hosted with RackSpace, monitoring our |