| Subject | Re: [PATCH 5.6 096/166] x86/xen: Make the boot CPU idle task reliable | From | Jürgen Groß <> | Date | Wed, 22 Apr 2020 12:45:32 +0200 |
| |
On 22.04.20 11:57, Greg Kroah-Hartman wrote: > From: Miroslav Benes <mbenes@suse.cz> > > [ Upstream commit 2f62f36e62daec43aa7b9633ef7f18e042a80bed ] > > The unwinder reports the boot CPU idle task's stack on XEN PV as > unreliable, which affects at least live patching. There are two reasons > for this. First, the task does not follow the x86 convention that its > stack starts at the offset right below saved pt_regs. It allows the > unwinder to easily detect the end of the stack and verify it. Second, > startup_xen() function does not store the return address before jumping > to xen_start_kernel() which confuses the unwinder. > > Amend both issues by moving the starting point of initial stack in > startup_xen() and storing the return address before the jump, which is > exactly what call instruction does. > > Signed-off-by: Miroslav Benes <mbenes@suse.cz> > Reviewed-by: Juergen Gross <jgross@suse.com> > Signed-off-by: Juergen Gross <jgross@suse.com> > Signed-off-by: Sasha Levin <sashal@kernel.org>
You'll need upstream d6f34f4c6b4a96 ("x86/xen: fix booting 32-bit pv guest"), too.
Juergen
|