Re: [PATCH 02/10] powerpc/xive: guest exploitation of the XIVE interrupt controller

From
Benjamin Herrenschmidt <benh@kernel.crashing.org>
Date
2017-08-10 11:34:21
Reply to
Cédric Le Goater, 2017-08-10
On Thu, 2017-08-10 at 08:45 +0200, Cédric Le Goater wrote:
quoted
The problem with doorbells on POWER9 guests is that they may have
to trap and be emulated by the hypervisor, since the guest threads
on P9 don't have to match the HW threads of the core.
Well, the pseries cause_ipi() handler does :

        if (doorbell_try_core_ipi(cpu))
                return;

to limit the doorbells to the same core. So we should be fine ?
No. It's theorically possible to create a guest that think it has 4
threads on P9 but those threads run on different cores of the host.

The doorbells are useful if KVM uses a "P8 style" whole-core dispatch
model or with PowerVM. We should probably invent some kind of DT
property to tell the guest I suppoes.
 If not
I suppose we should check CPU_FTR_ARCH_300 and use IPIs only for XIVE.
quoted
Thus it's quite possible that using XIVE for IPIs is actually faster
than doorbells in that case.
How can we measure that ? ebizzy may be.
Or a simple socket ping pong with processes pinned to different
threads.

However the current KVM for P9 doesn't do threads yet afaik.

Cheers,
Ben.
Thread (28 messages) 28 messages, 3 authors, last reply 2017-08-11
Keyboard shortcuts
hback out one level
jnext message in thread / next series-diff position
kprevious message in thread / previous series-diff position
ldrill in
Escclose help / fold thread tree
?toggle this help