drm/omap: gem sync: wait on correct events
authorArchit Taneja <archit@ti.com>
Fri, 11 Apr 2014 07:23:31 +0000 (12:53 +0530)
committerTomi Valkeinen <tomi.valkeinen@ti.com>
Tue, 15 Apr 2014 10:35:28 +0000 (13:35 +0300)
commitf2cff0f34ff2c51f703880a2b883ea0c9de4a5ac
tree2144c9cbb81a5b60746632763a67ba9f6dd0238f
parent15ec2ca964d7a52e7e0a452fe0f9c409d2f3eec6
drm/omap: gem sync: wait on correct events

A waiter of the type OMAP_GEM_READ should wait for a buffer to be completely
written, and only then proceed with reading it. A similar logic applies for
waiters with OMAP_GEM_WRITE flag.

Currently the function is_waiting() waits on the read_complete/read_target
counts in the sync object.

This should be the other way round, as a reader should wait for users who are
'writing' to this buffer, and vice versa.

Make readers of the buffer(OMAP_GEM_READ) wait on the write counters, and
writers to the buffer(OMAP_GEM_WRITE) wait on the read counters in is_waiting()

Signed-off-by: Archit Taneja <archit@ti.com>
Signed-off-by: Tomi Valkeinen <tomi.valkeinen@ti.com>
drivers/gpu/drm/omapdrm/omap_gem.c