Mesa (master): r600g,radeonsi: create aux_context last

Marek Olšák mareko at kemper.freedesktop.org
Thu Oct 3 16:31:32 UTC 2013


Module: Mesa
Branch: master
Commit: b893bbf438e1924d5f47370b29421642e79b0221
URL:    http://cgit.freedesktop.org/mesa/mesa/commit/?id=b893bbf438e1924d5f47370b29421642e79b0221

Author: Marek Olšák <marek.olsak at amd.com>
Date:   Thu Oct  3 16:39:50 2013 +0200

r600g,radeonsi: create aux_context last

This fixes a regression caused by 68f6dec32ed5eede361f76c8dbdf897652659baf.

---

 src/gallium/drivers/r600/r600_pipe.c          |    3 +++
 src/gallium/drivers/radeon/r600_pipe_common.c |    2 --
 src/gallium/drivers/radeonsi/radeonsi_pipe.c  |    3 +++
 3 files changed, 6 insertions(+), 2 deletions(-)

diff --git a/src/gallium/drivers/r600/r600_pipe.c b/src/gallium/drivers/r600/r600_pipe.c
index 6b31bd8..e091b08 100644
--- a/src/gallium/drivers/r600/r600_pipe.c
+++ b/src/gallium/drivers/r600/r600_pipe.c
@@ -1134,6 +1134,9 @@ struct pipe_screen *r600_screen_create(struct radeon_winsys *ws)
 		}
 	}
 
+	/* Create the auxiliary context. This must be done last. */
+	rscreen->b.aux_context = rscreen->b.b.context_create(&rscreen->b.b, NULL);
+
 #if 0 /* This is for testing whether aux_context and buffer clearing work correctly. */
 	struct pipe_resource templ = {};
 
diff --git a/src/gallium/drivers/radeon/r600_pipe_common.c b/src/gallium/drivers/radeon/r600_pipe_common.c
index 852993c..dd4856f 100644
--- a/src/gallium/drivers/radeon/r600_pipe_common.c
+++ b/src/gallium/drivers/radeon/r600_pipe_common.c
@@ -175,9 +175,7 @@ bool r600_common_screen_init(struct r600_common_screen *rscreen,
 
 	util_format_s3tc_init();
 
-	/* Create the auxiliary context. */
 	pipe_mutex_init(rscreen->aux_context_lock);
-	rscreen->aux_context = rscreen->b.context_create(&rscreen->b, NULL);
 	return true;
 }
 
diff --git a/src/gallium/drivers/radeonsi/radeonsi_pipe.c b/src/gallium/drivers/radeonsi/radeonsi_pipe.c
index a929270..c3250e4 100644
--- a/src/gallium/drivers/radeonsi/radeonsi_pipe.c
+++ b/src/gallium/drivers/radeonsi/radeonsi_pipe.c
@@ -819,5 +819,8 @@ struct pipe_screen *radeonsi_screen_create(struct radeon_winsys *ws)
 	}
 #endif
 
+	/* Create the auxiliary context. This must be done last. */
+	rscreen->b.aux_context = rscreen->b.b.context_create(&rscreen->b.b, NULL);
+
 	return &rscreen->b.b;
 }




More information about the mesa-commit mailing list