android_kernel_sony_sdm845/drivers/dma-buf
Repository files (latest commit first)
Filename Latest commit message Latest commit date
Dmitry Torokhov f2719944d0 CHROMIUM: android: fix warning when releasing active sync point
Userspace can close the sync device while there are still active fence
points, in which case kernel produces the following warning:

[   43.853176] ------------[ cut here ]------------
[   43.857834] WARNING: CPU: 0 PID: 892 at
/mnt/host/source/src/third_party/kernel/v3.18/drivers/staging/android/sync.c:439
android_fence_release+0x88/0x104()
[   43.871741] CPU: 0 PID: 892 Comm: Binder_5 Tainted: G     U
3.18.0-07661-g0550ce9 #1
[   43.880176] Hardware name: Google Tegra210 Smaug Rev 1+ (DT)
[   43.885834] Call trace:
[   43.888294] [<ffffffc000207464>] dump_backtrace+0x0/0x10c
[   43.893697] [<ffffffc000207580>] show_stack+0x10/0x1c
[   43.898756] [<ffffffc000ab1258>] dump_stack+0x74/0xb8
[   43.903814] [<ffffffc00021d414>] warn_slowpath_common+0x84/0xb0
[   43.909736] [<ffffffc00021d530>] warn_slowpath_null+0x14/0x20
[   43.915482] [<ffffffc00088aefc>] android_fence_release+0x84/0x104
[   43.921582] [<ffffffc000671cc4>] fence_release+0x104/0x134
[   43.927066] [<ffffffc00088b0cc>] sync_fence_free+0x74/0x9c
[   43.932552] [<ffffffc00088b128>] sync_fence_release+0x34/0x48
[   43.938304] [<ffffffc000317bbc>] __fput+0x100/0x1b8
[   43.943185] [<ffffffc000317cc8>] ____fput+0x8/0x14
[   43.947982] [<ffffffc000237f38>] task_work_run+0xb0/0xe4
[   43.953297] [<ffffffc000207074>] do_notify_resume+0x44/0x5c
[   43.958867] ---[ end trace 5a2aa4027cc5d171 ]---

Let's fix it by introducing a new optional callback (disable_signaling)
to fence operations so that drivers can do proper clean ups when we
remove last callback for given fence.

BUG=chrome-os-partner:40303
TEST=Boot Smaug and observe that warning is gone.

Change-Id: I05c34dcf74438c28405438c7ead0706b1f810fff
Signed-off-by: Dmitry Torokhov <dtor@chromium.org>
Reviewed-on: https://chromium-review.googlesource.com/303409
Reviewed-by: Andrew Bresticker <abrestic@chromium.org>
[AmitP: Refactored it for upstream Sync framework changes.]
Signed-off-by: Amit Pundir <amit.pundir@linaro.org>
2016-10-24 23:41:21 +08:00
..
dma-buf.c dma-buf: Wait on the reservation object when sync'ing before CPU access 2016-08-16 12:31:35 +05:30
fence-array.c dma-buf: fix kernel-doc warning and typos 2016-08-17 09:19:28 +05:30
fence.c CHROMIUM: android: fix warning when releasing active sync point 2016-10-24 23:41:21 +08:00
Kconfig dma-buf/sw_sync: de-stage SW_SYNC 2016-08-15 16:41:46 +02:00
Makefile dma-buf/sw_sync: de-stage SW_SYNC 2016-08-15 16:41:46 +02:00
reservation.c reservation: fix small comment typo 2016-08-22 09:22:09 +02:00
seqno-fence.c dma-buf: Minor coding style fixes 2015-05-21 11:29:59 +05:30
sw_sync.c CHROMIUM: android: fix warning when releasing active sync point 2016-10-24 23:41:21 +08:00
sync_debug.c Merge tag 'drm-for-v4.9' of git://people.freedesktop.org/~airlied/linux 2016-10-11 18:12:22 -07:00
sync_debug.h dma-buf/sw_sync: de-stage SW_SYNC 2016-08-15 16:41:46 +02:00
sync_file.c dma-buf/sync_file: free fences array in num_fences is 1 2016-09-22 04:06:16 -07:00
sync_trace.h dma-buf/sw_sync: de-stage SW_SYNC 2016-08-15 16:41:46 +02:00