]> git.baikalelectronics.ru Git - kernel.git/commit
dma-buf: Document non-dynamic exporter expectations better
authorDaniel Vetter <daniel.vetter@ffwll.ch>
Mon, 21 Jun 2021 15:17:58 +0000 (17:17 +0200)
committerDaniel Vetter <daniel.vetter@ffwll.ch>
Tue, 22 Jun 2021 16:11:34 +0000 (18:11 +0200)
commit4bd95de05919d8ec1b1a46a10a936ca5a36c0d71
tree49f51703de4ac8ead45e9cd23702200353a17730
parent4d8e9a81b807942b3389ab17b7da305a8d07c6a4
dma-buf: Document non-dynamic exporter expectations better

Christian and me realized we have a pretty massive disconnect about
different interpretations of what dma_resv is used for by different
drivers. The discussion is much, much bigger than this change here,
but this is an important one:

Non-dynamic exporters must guarantee that the memory they return is
ready for use. They cannot expect importers to wait for the exclusive
fence. Only dynamic importers are required to obey the dma_resv fences
strictly (and more patches are needed to define exactly what this
means).

Christian has patches to update nouvea, radeon and amdgpu. The only
other driver using both ttm and supporting dma-buf export is qxl,
which only uses synchronous ttm_bo_move.

v2: To hammer this in document that dynamic importers _must_ wait for
the exclusive fence after having called dma_buf_map_attachment.

Reviewed-by: Christian König <christian.koenig@amd.com>
Cc: Christian König <ckoenig.leichtzumerken@gmail.com>
Signed-off-by: Daniel Vetter <daniel.vetter@intel.com>
Link: https://patchwork.freedesktop.org/patch/msgid/20210621151758.2347474-1-daniel.vetter@ffwll.ch
drivers/dma-buf/dma-buf.c
include/linux/dma-buf.h