Commit 35538d78 authored by Gustavo Padovan's avatar Gustavo Padovan Committed by Greg Kroah-Hartman

dma-buf/sw_sync: de-stage SW_SYNC

SW_SYNC allows to run tests on the sync_file framework via debugfs on

<debugfs>/sync/sw_sync

Opening and closing the file triggers creation and release of a sync
timeline. To create fences on this timeline the SW_SYNC_IOC_CREATE_FENCE
ioctl should be used. To increment the timeline value use SW_SYNC_IOC_INC.

Also it exports Sync information on

<debugfs>/sync/info
Signed-off-by: default avatarGustavo Padovan <gustavo.padovan@collabora.co.uk>
Reviewed-by: default avatarEric Engestrom <eric.engestrom@imgtec.com>
Signed-off-by: default avatarGreg Kroah-Hartman <gregkh@linuxfoundation.org>
parent fc0c9a03
...@@ -17,4 +17,17 @@ config SYNC_FILE ...@@ -17,4 +17,17 @@ config SYNC_FILE
Files fds, to the DRM driver for example. More details at Files fds, to the DRM driver for example. More details at
Documentation/sync_file.txt. Documentation/sync_file.txt.
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.
endmenu endmenu
obj-y := dma-buf.o fence.o reservation.o seqno-fence.o fence-array.o obj-y := dma-buf.o fence.o reservation.o seqno-fence.o fence-array.o
obj-$(CONFIG_SYNC_FILE) += sync_file.o obj-$(CONFIG_SYNC_FILE) += sync_file.o
obj-$(CONFIG_SW_SYNC) += sw_sync.o sync_debug.o
#undef TRACE_SYSTEM #undef TRACE_SYSTEM
#define TRACE_INCLUDE_PATH ../../drivers/staging/android #define TRACE_INCLUDE_PATH ../../drivers/dma-buf
#define TRACE_SYSTEM sync_trace #define TRACE_SYSTEM sync_trace
#if !defined(_TRACE_SYNC_H) || defined(TRACE_HEADER_MULTI_READ) #if !defined(_TRACE_SYNC_H) || defined(TRACE_HEADER_MULTI_READ)
......
...@@ -24,19 +24,6 @@ config ANDROID_LOW_MEMORY_KILLER ...@@ -24,19 +24,6 @@ config ANDROID_LOW_MEMORY_KILLER
scripts (/init.rc), and it defines priority values with minimum free memory size scripts (/init.rc), and it defines priority values with minimum free memory size
for each priority. for each priority.
config SW_SYNC
bool "Software synchronization 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.
source "drivers/staging/android/ion/Kconfig" source "drivers/staging/android/ion/Kconfig"
endif # if ANDROID endif # if ANDROID
......
...@@ -4,4 +4,3 @@ obj-y += ion/ ...@@ -4,4 +4,3 @@ obj-y += ion/
obj-$(CONFIG_ASHMEM) += ashmem.o obj-$(CONFIG_ASHMEM) += ashmem.o
obj-$(CONFIG_ANDROID_LOW_MEMORY_KILLER) += lowmemorykiller.o obj-$(CONFIG_ANDROID_LOW_MEMORY_KILLER) += lowmemorykiller.o
obj-$(CONFIG_SW_SYNC) += sw_sync.o sync_debug.o
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment