Re: [Qemu-ppc] pseries on qemu-system-ppc64le crashes in doorbell_core_ipi()
From: Sebastian Andrzej Siewior <bigeasy@linutronix.de>
Date: 2019-03-29 08:34:25
From: Sebastian Andrzej Siewior <bigeasy@linutronix.de>
Date: 2019-03-29 08:34:25
On 2019-03-29 16:20:51 [+1100], Suraj Jitindar Singh wrote:
Yeah the kernel must have used msgsndp which isn't implemented for TCG yet. We use doorbells in linux but only for threads which are on the same core.
It is msgsndp as per instruction decode.
And when I try to construct a situation with more than 1 thread per core (e.g. -smp 4,threads=4), I get "TCG cannot support more than 1 thread/core on a pseries machine". So I wonder why the guest thinks it can use msgsndp...
I see |# cat /sys/devices/system/cpu/cpu*/topology/thread_siblings_list |0 |1 |2 |3 so this works all well. The problem is when a CPU sends an IPI to itself then linux's doorbell_try_core_ipi() considers this as a valid sibling and here we have the msgsndp. Sebastian