Mesa (main): zink: flag swapchain resources as swapchains

GitLab Mirror gitlab-mirror at kemper.freedesktop.org
Wed Apr 27 22:20:25 UTC 2022


Module: Mesa
Branch: main
Commit: 4af98df9554cb526af792ecb4cc55e547025c12f
URL:    http://cgit.freedesktop.org/mesa/mesa/commit/?id=4af98df9554cb526af792ecb4cc55e547025c12f

Author: Mike Blumenkrantz <michael.blumenkrantz at gmail.com>
Date:   Tue Apr 19 16:44:02 2022 -0400

zink: flag swapchain resources as swapchains

Reviewed-by: Adam Jackson <ajax at redhat.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/16038>

---

 src/gallium/drivers/zink/zink_resource.c | 1 +
 src/gallium/drivers/zink/zink_resource.h | 3 ++-
 2 files changed, 3 insertions(+), 1 deletion(-)

diff --git a/src/gallium/drivers/zink/zink_resource.c b/src/gallium/drivers/zink/zink_resource.c
index 90ae9238460..8474f840514 100644
--- a/src/gallium/drivers/zink/zink_resource.c
+++ b/src/gallium/drivers/zink/zink_resource.c
@@ -977,6 +977,7 @@ resource_create(struct pipe_screen *pscreen,
       res->obj->vkusage = cdt->swapchain->scci.imageUsage;
       res->base.b.bind |= PIPE_BIND_DISPLAY_TARGET;
       res->optimal_tiling = true;
+      res->swapchain = true;
    }
    if (res->obj->is_buffer) {
       res->base.buffer_id_unique = util_idalloc_mt_alloc(&screen->buffer_ids);
diff --git a/src/gallium/drivers/zink/zink_resource.h b/src/gallium/drivers/zink/zink_resource.h
index fd04c950931..3381463aa35 100644
--- a/src/gallium/drivers/zink/zink_resource.h
+++ b/src/gallium/drivers/zink/zink_resource.h
@@ -152,6 +152,7 @@ struct zink_resource {
       };
    };
 
+   bool swapchain;
    bool dmabuf_acquire;
    unsigned dt_stride;
 
@@ -218,7 +219,7 @@ zink_resource_has_binds(const struct zink_resource *res)
 static inline bool
 zink_is_swapchain(const struct zink_resource *res)
 {
-   return (res->base.b.bind & PIPE_BIND_DISPLAY_TARGET) > 0;
+   return res->swapchain;
 }
 
 #ifndef __cplusplus



More information about the mesa-commit mailing list