drm/nouveau: Synchronize with the user channel before GPU object destruction.
authorFrancisco Jerez <currojerez@riseup.net>
Thu, 18 Nov 2010 22:57:46 +0000 (23:57 +0100)
committerFrancisco Jerez <currojerez@riseup.net>
Wed, 8 Dec 2010 02:00:23 +0000 (03:00 +0100)
commit6dccd311dd4b104b3bc53cb67aef414141d11c9f
tree98cbd0546c1081c76d29184aa7f2510fe19f8f60
parent38cf189fa13e988f85efb6de26315e762cecc260
drm/nouveau: Synchronize with the user channel before GPU object destruction.

There have been reports of PFIFO cache errors during context take down
(fdo bug 31637). They are caused by some GPU objects being taken out
while the channel is still potentially processing commands. Make sure
that all the previous rendering has landed before releasing a GPU
object.

Reported-by: Grzesiek Sójka <pld@pfu.pl>
Reported-by: Patrice Mandin <patmandin@gmail.com>
Signed-off-by: Francisco Jerez <currojerez@riseup.net>
Acked-by: Ben Skeggs <bskeggs@redhat.com>
Signed-off-by: Ben Skeggs <bskeggs@redhat.com>
drivers/gpu/drm/nouveau/nouveau_channel.c
drivers/gpu/drm/nouveau/nouveau_drv.c
drivers/gpu/drm/nouveau/nouveau_drv.h
drivers/gpu/drm/nouveau/nouveau_object.c