Re: WARNING: kernel stack frame pointer at ffffffff82e03f40 in swapper:0 has bad value (null)
From: Borislav Petkov
Date: Mon Dec 12 2016 - 16:34:55 EST
On Mon, Dec 12, 2016 at 03:16:27PM -0600, Josh Poimboeuf wrote:
> I still can't figure out what could cause this, nor can I recreate it.
Want my .config?
> Andy, any idea? I'm trying to figure out why a stack trace of the
> initial task, early in start_kernel(), would show start_cpu() on the
> stack *twice*. The start_cpu() entry on the stack at ffffffffbce03f50
> is right where it's supposed to be. But then there's another
> start_cpu() entry at 0xffffffffbce03f48 which is pointed to by the frame
> pointer chain. I can't figure out where that one came from and why the
> stack is offset by a word, compared to all the other idle task stacks
> I've seen.
Btw, why do you have:
call 1f # put return address on stack for unwinder
there in start_cpu() instead of
push $start_cpu
or so? That CALL looks strange there. If you want to put the return
address, just push start_cpu's address and that's it.
Or am I missing something?
> Boris, what kind of CPU is it?
[ 0.169371] smpboot: CPU0: Intel(R) Xeon(R) CPU E5-1620 0 @ 3.60GHz (family: 0x6, model: 0x2d, stepping: 0x7)
Sandybridge. The model 0x2d corresponds to that INTEL_FAM6_SANDYBRIDGE_X
define in intel-family.h.
--
Regards/Gruss,
Boris.
Good mailing practices for 400: avoid top-posting and trim the reply.