Thread (4 messages) flat view 4 messages, 3 authors, 2018-10-16

Re: Stack protector crash in pnv_smp_cpu_kill_self()

From: Segher Boessenkool <hidden>
Date: 2018-10-16 14:26:28

On Wed, Oct 17, 2018 at 12:21:50AM +1100, Michael Ellerman wrote:
Christophe LEROY [off-list ref] writes:
quoted
Looks like a lack of initialisation of the canary for the non-boot CPUs 
on SMP, you applied this morning the patch I sent you for that.

Is the patch in ?
Yeah it is.

  $ git log --oneline 4ffe713b7587 arch/powerpc/kernel/smp.c
  8e8a31d7fd54 powerpc: Use cpu_smallcore_sibling_mask at SMT level on bigcores
  425752c63b6f powerpc: Detect the presence of big-cores via "ibm, thread-groups"
  7241d26e8175 powerpc/64: properly initialise the stackprotector canary on SMP.


It only happens on a specific Power9 machine, not in sim, but it's 100%
reproducible on that hardware.

The canary value has changed (?!).

The value in paca->canary and current->canary agree, but they don't
match what's in the stack.

Clearly the idle code is doing something I don't understand :)
Did something actually corrupt the stack?


Segher
Keyboard shortcuts
hback out one level
jnext message in thread
kprevious message in thread
ldrill in
Escclose help / fold thread tree
?toggle this help