From 25a41b1aef7ed3463111a0e36f0a2a8405908557 Mon Sep 17 00:00:00 2001 From: Kenneth Graunke Date: Mon, 19 Nov 2018 00:23:54 -0800 Subject: [PATCH] iris: properly pin stencil buffers --- src/gallium/drivers/iris/iris_state.c | 11 ++++++++--- 1 file changed, 8 insertions(+), 3 deletions(-) diff --git a/src/gallium/drivers/iris/iris_state.c b/src/gallium/drivers/iris/iris_state.c index 2b632ab3cba..caf1f4e445a 100644 --- a/src/gallium/drivers/iris/iris_state.c +++ b/src/gallium/drivers/iris/iris_state.c @@ -4277,9 +4277,14 @@ iris_upload_dirty_render_state(struct iris_context *ice, iris_batch_emit(batch, cso_z->packets, sizeof(cso_z->packets)); if (cso_fb->zsbuf) { - struct iris_resource *zres = (void *) cso_fb->zsbuf->texture; - // XXX: depth might not be writable... - iris_use_pinned_bo(batch, zres->bo, true); + struct iris_resource *zres, *sres; + iris_get_depth_stencil_resources(cso_fb->zsbuf->texture, + &zres, &sres); + // XXX: might not be writable... + if (zres) + iris_use_pinned_bo(batch, zres->bo, true); + if (sres) + iris_use_pinned_bo(batch, sres->bo, true); } } -- 2.30.2