summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorBen Skeggs <[email protected]>2013-11-22 11:34:13 +1000
committerBen Skeggs <[email protected]>2013-11-22 11:34:43 +1000
commit085ad4821e450349ec1ba8c82d4bd0e7dcfef0af (patch)
treeb92d73884e1987ff612bffb4aa4e6595bf245b64
parent1bdb99330ac68003a9ee6c963f46bddb03b9073d (diff)
nvc0: inform kernel about buffers that screen_create touches
Prevents a GPU page fault if somehow the uniform bo gets evicted before the screen_create pushbuf has been submitted. Signed-off-by: Ben Skeggs <[email protected]>
-rw-r--r--src/gallium/drivers/nouveau/nvc0/nvc0_screen.c2
1 files changed, 2 insertions, 0 deletions
diff --git a/src/gallium/drivers/nouveau/nvc0/nvc0_screen.c b/src/gallium/drivers/nouveau/nvc0/nvc0_screen.c
index 253ee790540..b203089ec08 100644
--- a/src/gallium/drivers/nouveau/nvc0/nvc0_screen.c
+++ b/src/gallium/drivers/nouveau/nvc0/nvc0_screen.c
@@ -743,6 +743,8 @@ nvc0_screen_create(struct nouveau_device *dev)
if (ret)
goto fail;
+ PUSH_REFN (push, screen->uniform_bo, NOUVEAU_BO_VRAM | NOUVEAU_BO_WR);
+
for (i = 0; i < 5; ++i) {
/* TIC and TSC entries for each unit (nve4+ only) */
/* auxiliary constants (6 user clip planes, base instance id) */