[kvm-devel] [PATCH 2/6] PCI DMA API (v2)

2008-04-04 Thread Anthony Liguori
This patch introduces a PCI DMA API and some generic code to support other DMA APIs. It introduces a IOVector type that contains physical address/length pairs. These vectors can be translated by the PCI layer and passed either to generic copying functions or directly to the block or network

Re: [kvm-devel] [PATCH 2/6] PCI DMA API

2008-03-30 Thread Avi Kivity
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

Re: [kvm-devel] [PATCH 2/6] PCI DMA API

2008-03-30 Thread Anthony Liguori
Avi Kivity wrote: 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

[kvm-devel] [PATCH 2/6] PCI DMA API

2008-03-29 Thread Anthony Liguori
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