[Top][All Lists]
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: [Qemu-devel] [PATCH] ivshmem: use PIO for BAR0(Doorbell) instead of
From: |
Avi Kivity |
Subject: |
Re: [Qemu-devel] [PATCH] ivshmem: use PIO for BAR0(Doorbell) instead of MMIO to reduce notification time |
Date: |
Thu, 17 Nov 2011 16:36:17 +0200 |
User-agent: |
Mozilla/5.0 (X11; Linux x86_64; rv:7.0.1) Gecko/20110930 Thunderbird/7.0.1 |
On 11/14/2011 05:56 AM, address@hidden wrote:
> From: Hongyong Zang <address@hidden>
>
> Ivshmem(nahanni) is a mechanism for sharing host memory with VMs running on
> the same host. Currently, guest notifies qemu by reading or writing ivshmem
> device's PCI MMIO BAR0(Doorbell).
>
> This patch, changes this PCI MMIO BAR0(Doorbell) to PIO. And we find guest
> accesses PIO BAR 30% faster than MMIO BAR.
>
> CharDriverState **eventfd_chr;
> CharDriverState *server_chr;
> - MemoryRegion ivshmem_mmio;
> + MemoryRegion ivshmem_pio;
>
> - pcibus_t mmio_addr;
> + pcibus_t pio_addr;
This is a backwards incompatible change. The way to accomplish this is
to add a new BAR which aliases the old one. The new BAR should not be
visible on guests created with -M pc-1.0 and below. Please also update
the spec so that driver authors can make use of the new feature.
--
error compiling committee.c: too many arguments to function