--- /dev/null
+From d6f34f4c6b4a962eb7a86c923fea206f866a40be Mon Sep 17 00:00:00 2001
+From: Juergen Gross <jgross@suse.com>
+Date: Thu, 9 Apr 2020 09:00:01 +0200
+Subject: x86/xen: fix booting 32-bit pv guest
+
+From: Juergen Gross <jgross@suse.com>
+
+commit d6f34f4c6b4a962eb7a86c923fea206f866a40be upstream.
+
+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>
+Link: https://lore.kernel.org/r/20200409070001.16675-1-jgross@suse.com
+Signed-off-by: Juergen Gross <jgross@suse.com>
+Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
+
+---
+ arch/x86/xen/xen-head.S | 2 +-
+ 1 file changed, 1 insertion(+), 1 deletion(-)
+
+--- 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