drm/nouveau: Use the software object for fencing.
authorFrancisco Jerez <currojerez@riseup.net>
Sat, 26 Dec 2009 01:09:36 +0000 (02:09 +0100)
committerBen Skeggs <bskeggs@redhat.com>
Sun, 10 Jan 2010 23:06:38 +0000 (09:06 +1000)
commit8c032ce73ef3a9e5a14c35ea3de19f1b9a8d7c0d
tree5fb5838a8fd14fd40b699a1150685e6b18fea663
parentf03a314b4671407c4ff69a2d85e72413e8064c48
drm/nouveau: Use the software object for fencing.

This should avoid a race condition on nv0x, if we're doing it with
actual PGRAPH objects and a there's a fence within the FIFO DMA fetch
area when a context switch kicks in.

In that case we get an ILLEGAL_MTHD interrupt as expected, but the
values in PGRAPH_TRAPPED_ADDR aren't calculated correctly and they're
almost useless (e.g. you can see ILLEGAL_MTHDs for the now inactive
channel, with a wrong offset/data pair).

Signed-off-by: Francisco Jerez <currojerez@riseup.net>
drivers/gpu/drm/nouveau/nouveau_fence.c
drivers/gpu/drm/nouveau/nv04_graph.c