linux/drivers/staging/android
Ørjan Eide 713648f0f1 staging: sync: Fix race condition between merge and signal
The copied sync_pt was activated immediately. If the sync_pt was
signaled before the entire merge was completed, the new fence's pt_list
could be iterated over while it is still in the process of being
created.

Moving the the sync_pt_activate call for all new sync_pts to after both
the sync_fence_copy_pts and the sync_fence_merge_pts calls ensure that
the pt_list is complete and immutable before it can be reached from the
timeline's active list.

Cc: Maarten Lankhorst <maarten.lankhorst@canonical.com>
Cc: Erik Gilling <konkers@android.com>
Cc: Daniel Vetter <daniel.vetter@ffwll.ch>
Cc: Rob Clark <robclark@gmail.com>
Cc: Sumit Semwal <sumit.semwal@linaro.org>
Cc: dri-devel@lists.freedesktop.org
Cc: Android Kernel Team <kernel-team@android.com>
Signed-off-by: Erik Gilling <konkers@android.com>
Signed-off-by: John Stultz <john.stultz@linaro.org>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
2013-03-04 17:46:55 +08:00
..
trace staging: sync: Add tracepoint support 2013-03-04 17:46:55 +08:00
alarm-dev.c staging: alarm-dev: Implement compat_ioctl support 2013-01-18 12:37:11 -08:00
android_alarm.h staging: alarm-dev: Implement compat_ioctl support 2013-01-18 12:37:11 -08:00
ashmem.c mm: kill vma flag VM_CAN_NONLINEAR 2012-10-09 16:22:17 +09:00
ashmem.h
binder_trace.h Staging: android: binder: Add some tracepoints 2012-10-22 13:04:29 -07:00
binder.c hlist: drop the node parameter from iterators 2013-02-27 19:10:24 -08:00
binder.h Merge branch 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/jikos/trivial 2013-02-21 17:40:58 -08:00
Kconfig staging: sw_sync: Add cpu based sync driver 2013-03-04 17:40:08 +08:00
logger.c Staging: Android: logger: module_exit implementation 2012-11-26 16:01:30 -08:00
logger.h staging: android: logger.h: Complete documentation of logger_entry 2012-08-13 19:04:25 -07:00
lowmemorykiller.c mm, oom: change type of oom_score_adj to short 2012-12-11 17:22:27 -08:00
Makefile staging: sw_sync: Add cpu based sync driver 2013-03-04 17:40:08 +08:00
ram_console.h
sw_sync.c staging: sw_sync: Convert to use new value_str debug ops 2013-03-04 17:46:55 +08:00
sw_sync.h staging: sw_sync: Add cpu based sync driver 2013-03-04 17:40:08 +08:00
sync.c staging: sync: Fix race condition between merge and signal 2013-03-04 17:46:55 +08:00
sync.h staging: sync: Refactor sync debug printing 2013-03-04 17:46:55 +08:00
timed_gpio.c staging/android: use module_platform_driver 2012-08-13 19:04:25 -07:00
timed_gpio.h
timed_output.c
timed_output.h
TODO