[Mesa-dev] [PATCH 3/4] intel/aubinator: Gracefully handle dynamic state not being available

Jason Ekstrand jason at jlekstrand.net
Wed Dec 27 20:58:14 UTC 2017


Some older versions of the Vulkan driver didn't properly tag dynamic
state as needing to be captured.  Also, this prevents crashes when
looking at dumps on older kernels.
---
 src/intel/tools/gen_batch_decoder.c | 5 +++++
 1 file changed, 5 insertions(+)

diff --git a/src/intel/tools/gen_batch_decoder.c b/src/intel/tools/gen_batch_decoder.c
index e8dd19b..f09b833 100644
--- a/src/intel/tools/gen_batch_decoder.c
+++ b/src/intel/tools/gen_batch_decoder.c
@@ -582,6 +582,11 @@ decode_dynamic_state_pointers(struct gen_batch_decode_ctx *ctx,
                               const char *struct_type, const uint32_t *p,
                               int count)
 {
+   if (ctx->dynamic_base.map == NULL) {
+      fprintf(ctx->fp, "  dynamic %s state unavailable\n", struct_type);
+      return;
+   }
+
    struct gen_group *inst = gen_spec_find_instruction(ctx->spec, p);
    struct gen_group *state = gen_spec_find_struct(ctx->spec, struct_type);
 
-- 
2.5.0.400.gff86faf



More information about the mesa-dev mailing list