aboutsummaryrefslogtreecommitdiffstats
path: root/include/xen/events.h
diff options
context:
space:
mode:
authorMiroslav Benes <mbenes@suse.cz>2020-03-26 10:26:03 +0100
committerJuergen Gross <jgross@suse.com>2020-03-30 17:32:10 +0200
commitc3881eb58d56116c79ac4ee4f40fd15ead124c4b (patch)
tree1cd15be069bf435ff0ed342a019cd23ff2b4b3de /include/xen/events.h
parentx86/xen: Make the boot CPU idle task reliable (diff)
downloadlinux-dev-c3881eb58d56116c79ac4ee4f40fd15ead124c4b.tar.xz
linux-dev-c3881eb58d56116c79ac4ee4f40fd15ead124c4b.zip
x86/xen: Make the secondary CPU idle tasks reliable
The unwinder reports the secondary CPU idle tasks' stack on XEN PV as unreliable, which affects at least live patching. cpu_initialize_context() sets up the context of the CPU through VCPUOP_initialise hypercall. After it is woken up, the idle task starts in cpu_bringup_and_idle() function and its stack starts at the offset right below pt_regs. The unwinder correctly detects the end of stack there but it is confused by NULL return address in the last frame. Introduce a wrapper in assembly, which just calls cpu_bringup_and_idle(). The return address is thus pushed on the stack and the wrapper contains the annotation hint for the unwinder regarding the stack state. Signed-off-by: Miroslav Benes <mbenes@suse.cz> Reviewed-by: Juergen Gross <jgross@suse.com> Signed-off-by: Juergen Gross <jgross@suse.com>
Diffstat (limited to 'include/xen/events.h')
0 files changed, 0 insertions, 0 deletions