Anthony Liguori wrote:
> This patch introduces a PCI DMA API and some generic code to support other DMA
> APIs.  Two types are introduced: PhysIOVector and IOVector.  A DMA API
> maps a PhysIOVector, which is composed of target_phys_addr_t, into an 
> IOVector,
> which is composed of void *.
>
> This enables zero-copy IO to be preformed without introducing assumptions of
> phys_ram_base.  This API is at the PCI device level to enable support of
> per-device IOMMU remapping.
>
>
> +
> +typedef struct IOVector
> +{
> +    int num;
> +    struct IOVectorElement {
> +     void *base;
> +     size_t len;
> +    } sg[0];
> +} IOVector;
> +
>   

Can we use 'struct iovec' for the element type (with accessors for 
setting base+len, and reading base or len, so we can substitute the 
Windows version for that platform)? That will allow using the vector 
without additional translation or casts.

-- 
error compiling committee.c: too many arguments to function


-------------------------------------------------------------------------
Check out the new SourceForge.net Marketplace.
It's the best place to buy or sell services for
just about anything Open Source.
http://ad.doubleclick.net/clk;164216239;13503038;w?http://sf.net/marketplace
_______________________________________________
kvm-devel mailing list
kvm-devel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/kvm-devel

Reply via email to