Re: [PATCH for review] [127/145] i386: move kernel_thread_helper into entry.S

Jan Beulich
2006-08-11T08:32:25Z

>And add proper CFI annotation to it which was previously
>impossible. This prevents "stuck" messages by the dwarf2 unwinder
>when reaching the top of a kernel stack.

>+ENTRY(kernel_thread_helper)
>+ CFI_STARTPROC
>+ movl %edx,%eax
>+ CFI_REGISTER edx,eax

This is pointless, as %eax will be clobbered by the callee of the
subsequent call.

>+ push %edx
>+ CFI_ADJUST_CFA_OFFSET 4
>+ CFI_REL_OFFSET edx,0

This likewise is pointless, as the argument is owned by the callee.

>+ call *%ebx
>+ push %eax
>+ CFI_ADJUST_CFA_OFFSET 4
>+ CFI_REL_OFFSET eax,0

And this too - the value now in %eax has no relation with the
value known by the caller of this routine (which doesn't expect
any return from here anyway).

>+ call do_exit
>+ CFI_ENDPROC
>+ENDPROC(kernel_thread_helper)

Jan