Messages in this thread | | | Date | Mon, 12 Dec 2016 23:33:54 +0100 | From | Borislav Petkov <> | Subject | Re: WARNING: kernel stack frame pointer at ffffffff82e03f40 in swapper:0 has bad value (null) |
| |
On Mon, Dec 12, 2016 at 04:11:47PM -0600, Josh Poimboeuf wrote: > Yes, please.
Attached.
> That said, the code could probably be made a little clearer by changing > "call 1f" to "push $1f" and then move the '1' label to after the lretq > instruction, like: > > pushq $1f # put return address on stack for unwinder > xorq %rbp, %rbp # clear frame pointer > movq initial_code(%rip), %rax > pushq $__KERNEL_CS # set correct cs > pushq %rax # target address in negative space > lretq > 1: > ENDPROC(start_cpu) > > That shows: > > start_cpu+0x14/0x14 > > Which is more accurate anyway. I'll make a patch.
Yap, makes more sense. I'll run it tomorrow.
FWIW, I tried
pushq $1f
before without moving the 1: label but the thing still fired.
-- Regards/Gruss, Boris.
Good mailing practices for 400: avoid top-posting and trim the reply. [unhandled content-type:application/gzip] | |