arch/x86/xen/xen-head.S | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-)
Commit 2f62f36e62daec ("x86/xen: Make the boot CPU idle task reliable")
introduced a regression for booting 32 bit Xen PV guests: the address
of the initial stack needs to be a virtual one.
Fixes: 2f62f36e62daec ("x86/xen: Make the boot CPU idle task reliable")
Signed-off-by: Juergen Gross <jgross@suse.com>
---
arch/x86/xen/xen-head.S | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/arch/x86/xen/xen-head.S b/arch/x86/xen/xen-head.S
index 7d1c4fcbe8f7..1ba601df3a37 100644
--- a/arch/x86/xen/xen-head.S
+++ b/arch/x86/xen/xen-head.S
@@ -38,7 +38,7 @@ SYM_CODE_START(startup_xen)
#ifdef CONFIG_X86_64
mov initial_stack(%rip), %rsp
#else
- mov pa(initial_stack), %esp
+ mov initial_stack, %esp
#endif
#ifdef CONFIG_X86_64
--
2.16.4
On 4/9/20 3:00 AM, Juergen Gross wrote: > Commit 2f62f36e62daec ("x86/xen: Make the boot CPU idle task reliable") > introduced a regression for booting 32 bit Xen PV guests: the address > of the initial stack needs to be a virtual one. > > Fixes: 2f62f36e62daec ("x86/xen: Make the boot CPU idle task reliable") > Signed-off-by: Juergen Gross <jgross@suse.com> Reviewed-by: Boris Ostrovsky <boris.ostrovsky@oracle.com> > --- > arch/x86/xen/xen-head.S | 2 +- > 1 file changed, 1 insertion(+), 1 deletion(-) > > diff --git a/arch/x86/xen/xen-head.S b/arch/x86/xen/xen-head.S > index 7d1c4fcbe8f7..1ba601df3a37 100644 > --- a/arch/x86/xen/xen-head.S > +++ b/arch/x86/xen/xen-head.S > @@ -38,7 +38,7 @@ SYM_CODE_START(startup_xen) > #ifdef CONFIG_X86_64 While at it, I'd swap the ifdefs and fold x86_64 case into the one below. > mov initial_stack(%rip), %rsp > #else > - mov pa(initial_stack), %esp > + mov initial_stack, %esp > #endif > > #ifdef CONFIG_X86_64
On 09.04.20 16:44, Boris Ostrovsky wrote: > > On 4/9/20 3:00 AM, Juergen Gross wrote: >> Commit 2f62f36e62daec ("x86/xen: Make the boot CPU idle task reliable") >> introduced a regression for booting 32 bit Xen PV guests: the address >> of the initial stack needs to be a virtual one. >> >> Fixes: 2f62f36e62daec ("x86/xen: Make the boot CPU idle task reliable") >> Signed-off-by: Juergen Gross <jgross@suse.com> > > > Reviewed-by: Boris Ostrovsky <boris.ostrovsky@oracle.com> > > >> --- >> arch/x86/xen/xen-head.S | 2 +- >> 1 file changed, 1 insertion(+), 1 deletion(-) >> >> diff --git a/arch/x86/xen/xen-head.S b/arch/x86/xen/xen-head.S >> index 7d1c4fcbe8f7..1ba601df3a37 100644 >> --- a/arch/x86/xen/xen-head.S >> +++ b/arch/x86/xen/xen-head.S >> @@ -38,7 +38,7 @@ SYM_CODE_START(startup_xen) >> #ifdef CONFIG_X86_64 > > > While at it, I'd swap the ifdefs and fold x86_64 case into the one below. I wanted to remove 32-bit PV support from the kernel soon, so I think this can wait until then. :-) Juergen
© 2016 - 2024 Red Hat, Inc.