Messages in this thread | | | Date | Tue, 12 Aug 2008 18:49:14 +0200 | From | Joerg Roedel <> | Subject | Re: [PATCH 0/7] x86 dma_*_coherent rework patchset |
| |
On Tue, Aug 12, 2008 at 07:06:58PM +0300, Muli Ben-Yehuda wrote: > [added Andi to CC] > > On Tue, Aug 12, 2008 at 05:24:10PM +0200, Joerg Roedel wrote: > > Hi, > > > > this patchset reworks the dma_*_coherent functions in the DMA layer > > for the x86 architecture. The patch series extends the existing DMA > > backends with missing *coherent callbacks and simplifies the generic > > function to basically only call the registered backend. This allows > > future optimizations in hardware specific IOMMU implementations. > > The code ist tested on AMD64 with AMD IOMMU and GART as well as on > > my old 486 box. It is not yet tested on a Calgary IOMMU system. > > Now it is---appears to work fine on a Calgary system. > > In general the patchset looks good and is definitely a step in the > right direction. I am a bit concerned about the contortions that the > generic dma_alloc_coherent went through before calling the ops > version---have you verified they are no longer needed?
Most of the logic in the old dma_alloc_coherent function is moved to the specific IOMMU implementations now. The old function tried to handle all cases, hardware IOMMU, GART and NOMMU in one function which made it a bit hard to read. This logic is split up and moved to the specific DMA backends now.
Joerg
| |