Re: [PATCH v2 5/6] kvm: add PV MMIO

Michael S. Tsirkin
2013-04-04T15:37:20Z

On Thu, Apr 04, 2013 at 04:56:11PM +0200, Paolo Bonzini wrote:
> Il 04/04/2013 15:10, Michael S. Tsirkin ha scritto:
> > > I would like Avi to comment on this, because I think this is not the
> > > "memory-API approved" way of doing things. You need KVM to define its
> > > own AddressSpace, and make KVM's listener use
> > > memory_region_to_address_space to figure out if it is for PV MMIO.
> > >
> > > To handle accesses from TCG, the PV AddressSpace can simply have just an
> > > alias to the actual MemoryRegion where the doorbell is.
> >
> > This is not really different from other eventfd flags like datamatch.
> > Separate address space is not appropriate here.
> > This is regular memory space, KVM eventfd simply has a flag that says
> > "guest is well behaved so please make eventfd go faster".
>
> Having a separate address space would match what you do in the kernel
> though.

Not really, in kernel the device is as usual on the MMIO
bus. The pv_mmio_bus is an extra datastructure to enable lookups where
length is not known in an efficient way. Userspace does not need to know
about these details.

> I just don't like functions with a dozen arguments... Can you just make
> datamatch and pv a single flags argument, as is the case with the KVM API?
>
> Paolo

Extra parameters are detected by compiler :)
I don't really care, anyone else objects to changing
datamatch to a flags argument?

Please let me know to avoid changing it back and forth.

--
MST