Changes since v5: - Moved 'replace write by dma_dir' to the beginning of the patch series. - Split off the 'add dma_dir to alloc()' as a separate patch. - Address all Pawel's review comments. The patch series adds an allocation context to dma-sg and uses that to move dma_(un)map_sg into the vb2 framework, which is where it belongs. Some drivers needs to fixup the buffers before giving it back to userspace (or before handing it over to the kernel). Document that this can be done in buf_prepare and buf_finish. The last 5 patches make this more strict by requiring all cpu access to be bracketed by calls to vb2_plane_begin/end_cpu_access() which replaces the old vb2_plane_vaddr() call. Note: two drivers still use the vb2_plane_vaddr() call: coda and exynos4-is/fimc-capture.c. For both drivers I will need some help since I am not sure where to put the begin/end calls. Patch 15 removes the vb2_plane_vaddr call, so obviously those two drivers won't compile after that. DMABUF export support is added to dma-sg and vmalloc, so now all memory models support DMABUF importing and exporting. I am inclined to make a pull request for patches 1-11 if there are no new comments. The issues that patches 12-16 address are separate from the patches 1-11 and this is only an issue when using dmabuf with drivers that need cpu access. Reviews are very welcome. Regards, Hans -- To unsubscribe from this list: send the line "unsubscribe linux-media" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html