]> git.baikalelectronics.ru Git - kernel.git/commit
drm/vc4: Fix races when the CS reads from render targets.
authorEric Anholt <eric@anholt.net>
Tue, 27 Sep 2016 16:03:13 +0000 (09:03 -0700)
committerEric Anholt <eric@anholt.net>
Thu, 6 Oct 2016 18:53:50 +0000 (11:53 -0700)
commit609d91dee499c4b54dac6f98b3c11bbc0fbb1110
treeae271f8f9fc2af7cdbf9b9bf84e17f99180a388d
parent8427ca4e5f51adeda6ff15c8862bfae268c0222a
drm/vc4: Fix races when the CS reads from render targets.

With the introduction of bin/render pipelining, the previous job may
not be completed when we start binning the next one.  If the previous
job wrote our VBO, IB, or CS textures, then the binning stage might
get stale or uninitialized results.

Fixes the major rendering failure in glmark2 -b terrain.

Signed-off-by: Eric Anholt <eric@anholt.net>
Fixes: 447903ee0e05 ("drm/vc4: improve throughput by pipelining binning and rendering jobs")
Cc: stable@vger.kernel.org
drivers/gpu/drm/vc4/vc4_drv.h
drivers/gpu/drm/vc4/vc4_gem.c
drivers/gpu/drm/vc4/vc4_render_cl.c
drivers/gpu/drm/vc4/vc4_validate.c