Mesa (master): zink: do not report SSBOs as halfway supported

GitLab Mirror gitlab-mirror at kemper.freedesktop.org
Tue Oct 13 20:59:07 UTC 2020


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

Author: Erik Faye-Lund <erik.faye-lund at collabora.com>
Date:   Tue Oct 13 15:18:20 2020 +0200

zink: do not report SSBOs as halfway supported

We don't support SSBOs yet, as we don't expose the
PIPE_CAP_SHADER_BUFFER_OFFSET_ALIGNMENT-cap. But the gallium
state-tracker's limit-calculation gets confused by this half-way
support, and ends up thinking we can support atomics, which we
don't support yet either.

So let's not confuse the state-tracker here, and let's introduce this
again when SSBOs are actually supported.

Reviewed-By: Mike Blumenkrantz <michael.blumenkrantz at gmail.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/7113>

---

 src/gallium/drivers/zink/zink_screen.c | 3 +--
 1 file changed, 1 insertion(+), 2 deletions(-)

diff --git a/src/gallium/drivers/zink/zink_screen.c b/src/gallium/drivers/zink/zink_screen.c
index ecdf13ab60a..cc8b5fff642 100644
--- a/src/gallium/drivers/zink/zink_screen.c
+++ b/src/gallium/drivers/zink/zink_screen.c
@@ -460,8 +460,7 @@ zink_get_shader_param(struct pipe_screen *pscreen,
       return 32; /* arbitrary */
 
    case PIPE_SHADER_CAP_MAX_SHADER_BUFFERS:
-      /* TODO: this limitation is dumb, and will need some fixes in mesa */
-      return MIN2(screen->info.props.limits.maxPerStageDescriptorStorageBuffers, PIPE_MAX_SHADER_BUFFERS);
+      return 0;
 
    case PIPE_SHADER_CAP_SUPPORTED_IRS:
       return (1 << PIPE_SHADER_IR_NIR) | (1 << PIPE_SHADER_IR_TGSI);



More information about the mesa-commit mailing list