From: Dave Airlie Date: Tue, 22 May 2012 12:34:38 +0000 (+0100) Subject: dma-buf: add initial vmap documentation X-Git-Url: https://openfabrics.org/gitweb/?a=commitdiff_plain;h=b25b086d23eb852bf3cfdeb60409b4967ebb3c0c;p=~shefty%2Frdma-dev.git dma-buf: add initial vmap documentation Signed-off-by: Dave Airlie Signed-off-by: Sumit Semwal --- diff --git a/Documentation/dma-buf-sharing.txt b/Documentation/dma-buf-sharing.txt index 5ff4d2b84f7..ad86fb86c9a 100644 --- a/Documentation/dma-buf-sharing.txt +++ b/Documentation/dma-buf-sharing.txt @@ -293,6 +293,17 @@ Access to a dma_buf from the kernel context involves three steps: Note that these calls need to always succeed. The exporter needs to complete any preparations that might fail in begin_cpu_access. + For some cases the overhead of kmap can be too high, a vmap interface + is introduced. This interface should be used very carefully, as vmalloc + space is a limited resources on many architectures. + + Interfaces: + void *dma_buf_vmap(struct dma_buf *dmabuf) + void dma_buf_vunmap(struct dma_buf *dmabuf, void *vaddr) + + The vmap call can fail if there is no vmap support in the exporter, or if it + runs out of vmalloc space. Fallback to kmap should be implemented. + 3. Finish access When the importer is done accessing the range specified in begin_cpu_access,