[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: [Qemu-ppc] [PATCH v3 03/15] spapr/xive: add hcall support when under
From: |
Cédric Le Goater |
Subject: |
Re: [Qemu-ppc] [PATCH v3 03/15] spapr/xive: add hcall support when under KVM |
Date: |
Fri, 22 Mar 2019 07:55:34 +0100 |
User-agent: |
Mozilla/5.0 (X11; Linux x86_64; rv:60.0) Gecko/20100101 Thunderbird/60.4.0 |
On 3/22/19 1:51 AM, David Gibson wrote:
> On Thu, Mar 21, 2019 at 03:49:02PM +0100, Cédric Le Goater wrote:
>> XIVE hcalls are all redirected to QEMU as none are on a fast path.
>> When necessary, QEMU invokes KVM through specific ioctls to perform
>> host operations. QEMU should have done the necessary checks before
>> calling KVM and, in case of failure, H_HARDWARE is simply returned.
>>
>> H_INT_ESB is a special case that could have been handled under KVM
>> but the impact on performance was low when under QEMU. Here are some
>> figures :
>>
>> kernel irqchip OFF ON
>> H_INT_ESB KVM QEMU
>>
>> rtl8139 (LSI ) 1.19 1.24 1.23 Gbits/sec
>> virtio 31.80 42.30 -- Gbits/sec
>>
>> Signed-off-by: Cédric Le Goater <address@hidden>
>
> Reviewed-by: David Gibson <address@hidden>
>
>> ---
>>
>> What has not changed :
>>
>> - Memory barriers have not been included. Only loads are performed on
>> the ESB management page (no stores for now) and stores are done
>> only on the trigger page. We should be fine as for the load
>> ordering on the management page.
>
> I'm not entirely sure I'm convinced by this reasoning, but I'll take
> your word for it.
>
I had a word with our HW designer and we can only have one load outstanding
per physical thread, so multiple CI loads will go out as ordered.
C.

[Qemu-ppc] [PATCH v3 06/15] spapr/xive: add migration support for KVM, Cédric Le Goater, 2019/03/21
[Qemu-ppc] [PATCH v3 02/15] spapr/xive: add KVM support, Cédric Le Goater, 2019/03/21
[Qemu-ppc] [PATCH v3 07/15] spapr/xive: activate KVM support, Cédric Le Goater, 2019/03/21
[Qemu-ppc] [PATCH v3 08/15] spapr/rtas: modify spapr_rtas_register() to remove RTAS handlers, Cédric Le Goater, 2019/03/21