On Thu, 2011-11-17 at 16:36 +0200, Avi Kivity wrote: > On 11/14/2011 05:56 AM, zanghongyong@xxxxxxxxxx wrote: > > From: Hongyong Zang <zanghongyong@xxxxxxxxxx> > > > > 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. Can we add an optional BAR 3 which does exactly what BAR 0 does, but is in PIO space? This will allow us to extend the spec instead of changing it, and in turn drivers could remain compatible with QEMU and other device implementations. -- Sasha. -- To unsubscribe from this list: send the line "unsubscribe kvm" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html