Message ID | 20200115184358.21131-1-andrew.cooper3@citrix.com (mailing list archive) |
---|---|
State | New, archived |
Headers | show |
Series | ARM/boot: Don't poison 'current' during early boot | expand |
Hi, On 15/01/2020 18:43, Andrew Cooper wrote: > This logic was inherited from x86 (which was updated several times since). > Unlike x86 (at the time) however, while NULL isn't mapped in ARM, 0xfffff000 > is, making this actively dangerous. > > Drop the logic entirely, and leave 'current' as NULL during early boot. > > Signed-off-by: Andrew Cooper <andrew.cooper3@citrix.com> Thank you for the cleanup! Acked-by: Julien Grall <julien@xen.org> Cheers, > --- > CC: Stefano Stabellini <sstabellini@kernel.org> > CC: Julien Grall <julien@xen.org> > CC: Volodymyr Babchuk <Volodymyr_Babchuk@epam.com> > --- > xen/arch/arm/setup.c | 3 --- > 1 file changed, 3 deletions(-) > > diff --git a/xen/arch/arm/setup.c b/xen/arch/arm/setup.c > index 3c899cd4a0..9dd3738d44 100644 > --- a/xen/arch/arm/setup.c > +++ b/xen/arch/arm/setup.c > @@ -798,9 +798,6 @@ void __init start_xen(unsigned long boot_phys_offset, > percpu_init_areas(); > set_processor_id(0); /* needed early, for smp_processor_id() */ > > - set_current((struct vcpu *)0xfffff000); /* debug sanity */ > - idle_vcpu[0] = current; > - > setup_virtual_regions(NULL, NULL); > /* Initialize traps early allow us to get backtrace when an error occurred */ > init_traps(); >
diff --git a/xen/arch/arm/setup.c b/xen/arch/arm/setup.c index 3c899cd4a0..9dd3738d44 100644 --- a/xen/arch/arm/setup.c +++ b/xen/arch/arm/setup.c @@ -798,9 +798,6 @@ void __init start_xen(unsigned long boot_phys_offset, percpu_init_areas(); set_processor_id(0); /* needed early, for smp_processor_id() */ - set_current((struct vcpu *)0xfffff000); /* debug sanity */ - idle_vcpu[0] = current; - setup_virtual_regions(NULL, NULL); /* Initialize traps early allow us to get backtrace when an error occurred */ init_traps();
This logic was inherited from x86 (which was updated several times since). Unlike x86 (at the time) however, while NULL isn't mapped in ARM, 0xfffff000 is, making this actively dangerous. Drop the logic entirely, and leave 'current' as NULL during early boot. Signed-off-by: Andrew Cooper <andrew.cooper3@citrix.com> --- CC: Stefano Stabellini <sstabellini@kernel.org> CC: Julien Grall <julien@xen.org> CC: Volodymyr Babchuk <Volodymyr_Babchuk@epam.com> --- xen/arch/arm/setup.c | 3 --- 1 file changed, 3 deletions(-)