236b06ac63
dma-buf destructor support is useful as it allows clients an opportunity to undo any attributes, such as security attributes, they have applied to the dma-buf's memory. The destructor is called when the dma-buf is freed, if the destructor returns an error the dma-buf's exporter release function is not called in order to ensure that memory which has not been properly cleaned up isn't returned to the system. Change-Id: If2173b23b441157b3638110f02e2ff90ab6ad1aa Signed-off-by: Liam Mark <lmark@codeaurora.org> Signed-off-by: Swathi Sridhar <swatsrid@codeaurora.org> [isaacm@codeaurora.org: resolve merge conflicts/qseecom redefinitions] Signed-off-by: Isaac J. Manjarres <isaacm@codeaurora.org>
74 lines
2.5 KiB
Plaintext
74 lines
2.5 KiB
Plaintext
# SPDX-License-Identifier: GPL-2.0-only
|
|
menu "DMABUF options"
|
|
|
|
config SYNC_FILE
|
|
bool "Explicit Synchronization Framework"
|
|
default n
|
|
select DMA_SHARED_BUFFER
|
|
---help---
|
|
The Sync File Framework adds explicit syncronization via
|
|
userspace. It enables send/receive 'struct dma_fence' objects to/from
|
|
userspace via Sync File fds for synchronization between drivers via
|
|
userspace components. It has been ported from Android.
|
|
|
|
The first and main user for this is graphics in which a fence is
|
|
associated with a buffer. When a job is submitted to the GPU a fence
|
|
is attached to the buffer and is transferred via userspace, using Sync
|
|
Files fds, to the DRM driver for example. More details at
|
|
Documentation/driver-api/sync_file.rst.
|
|
|
|
config SW_SYNC
|
|
bool "Sync File Validation Framework"
|
|
default n
|
|
depends on SYNC_FILE
|
|
depends on DEBUG_FS
|
|
---help---
|
|
A sync object driver that uses a 32bit counter to coordinate
|
|
synchronization. Useful when there is no hardware primitive backing
|
|
the synchronization.
|
|
|
|
WARNING: improper use of this can result in deadlocking kernel
|
|
drivers from userspace. Intended for test and debug only.
|
|
|
|
config DEBUG_DMA_BUF_REF
|
|
bool "DEBUG Reference Count"
|
|
depends on STACKDEPOT
|
|
depends on DMA_SHARED_BUFFER
|
|
default n
|
|
help
|
|
Save stack traces for every call to dma_buf_get and dma_buf_put, to
|
|
help debug memory leaks. Potential leaks may be found by manually
|
|
matching the get/put call stacks. This feature consumes extra memory
|
|
in order to save the stack traces using STACKDEPOT.
|
|
|
|
config DMABUF_DESTRUCTOR_SUPPORT
|
|
bool "dmabuf destructor support"
|
|
default n
|
|
depends on DMA_SHARED_BUFFER
|
|
depends on QGKI
|
|
help
|
|
dma-buf destructor support is useful as it allows clients an
|
|
opportunity to undo any attributes, such as security attributes,
|
|
they have applied to the dma-buf's memory.
|
|
|
|
The destructor is called when the dma-buf is freed, if the destructor
|
|
returns an error the dma-buf's exporter release function is not
|
|
called in order to ensure that memory which has not been properly
|
|
cleaned up isn't returned to the system
|
|
|
|
config UDMABUF
|
|
bool "userspace dmabuf misc driver"
|
|
default n
|
|
depends on DMA_SHARED_BUFFER
|
|
depends on MEMFD_CREATE || COMPILE_TEST
|
|
help
|
|
A driver to let userspace turn memfd regions into dma-bufs.
|
|
Qemu can use this to create host dmabufs for guest framebuffers.
|
|
|
|
config DMABUF_SELFTESTS
|
|
tristate "Selftests for the dma-buf interfaces"
|
|
default n
|
|
depends on DMA_SHARED_BUFFER
|
|
|
|
endmenu
|