From de01ae120dd92cd38bef36c1ba6f08904306fccf Mon Sep 17 00:00:00 2001 From: Alyssa Rosenzweig Date: Thu, 30 Mar 2023 18:09:34 -0400 Subject: [PATCH] panfrost: Allocate shared memory in OpenCL In OpenCL, we can have no shader-defined shared memory but some dispatch-time variable memory. This is not reflected in ss->info.wls_size, so check the right variable instead so we allocate the appropriate memory. Fixes page faults accessing shared memory with Rusticl, e.g. in the vstore_local test. Signed-off-by: Alyssa Rosenzweig Reviewed-by: Italo Nicola Part-of: --- src/gallium/drivers/panfrost/pan_cmdstream.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/gallium/drivers/panfrost/pan_cmdstream.c b/src/gallium/drivers/panfrost/pan_cmdstream.c index 309fef6..4b3c29f 100644 --- a/src/gallium/drivers/panfrost/pan_cmdstream.c +++ b/src/gallium/drivers/panfrost/pan_cmdstream.c @@ -1604,7 +1604,7 @@ panfrost_emit_shared_memory(struct panfrost_batch *batch, info.tls.ptr = bo->ptr.gpu; } - if (ss->info.wls_size) { + if (info.wls.size) { unsigned size = pan_wls_adjust_size(info.wls.size) * info.wls.instances * dev->core_id_range; -- 2.7.4