[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 14:11, Jan Beulich wrote: >>>> 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. Okay. > >> --- 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? Oh, that one again. Sorry. Maybe we should really take my related patch to avoid issues like this one. > >> --- 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. Aah, right. Will send V2 soon. Juergen _______________________________________________ Xen-devel mailing list Xen-devel@xxxxxxxxxxxxxxxxxxxx https://lists.xenproject.org/mailman/listinfo/xen-devel
|
Lists.xenproject.org is hosted with RackSpace, monitoring our |