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

Author: Yiwei Zhang <[email protected]>
Date:   Thu Aug 24 14:56:02 2023 -0700

venus: add no_sparse debug option to disable sparse resource support

Signed-off-by: Yiwei Zhang <[email protected]>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/24877>

---

 src/virtio/vulkan/vn_common.c          | 1 +
 src/virtio/vulkan/vn_common.h          | 1 +
 src/virtio/vulkan/vn_physical_device.c | 3 ++-
 3 files changed, 4 insertions(+), 1 deletion(-)

diff --git a/src/virtio/vulkan/vn_common.c b/src/virtio/vulkan/vn_common.c
index 50d6dc736ac..90620f10447 100644
--- a/src/virtio/vulkan/vn_common.c
+++ b/src/virtio/vulkan/vn_common.c
@@ -32,6 +32,7 @@ static const struct debug_control vn_debug_options[] = {
    { "no_abort", VN_DEBUG_NO_ABORT },
    { "log_ctx_info", VN_DEBUG_LOG_CTX_INFO },
    { "cache", VN_DEBUG_CACHE },
+   { "no_sparse", VN_DEBUG_NO_SPARSE },
    { NULL, 0 },
    /* clang-format on */
 };
diff --git a/src/virtio/vulkan/vn_common.h b/src/virtio/vulkan/vn_common.h
index 7bf1142da88..4e38fed3d74 100644
--- a/src/virtio/vulkan/vn_common.h
+++ b/src/virtio/vulkan/vn_common.h
@@ -104,6 +104,7 @@ enum vn_debug {
    VN_DEBUG_NO_ABORT = 1ull << 4,
    VN_DEBUG_LOG_CTX_INFO = 1ull << 5,
    VN_DEBUG_CACHE = 1ull << 6,
+   VN_DEBUG_NO_SPARSE = 1ull << 7,
 };
 
 enum vn_perf {
diff --git a/src/virtio/vulkan/vn_physical_device.c 
b/src/virtio/vulkan/vn_physical_device.c
index 98eec8c74f5..c17ff787c18 100644
--- a/src/virtio/vulkan/vn_physical_device.c
+++ b/src/virtio/vulkan/vn_physical_device.c
@@ -795,7 +795,8 @@ vn_physical_device_init_queue_family_properties(
       }
    }
 
-   if (sparse_count && non_sparse_only_count + sparse_count == count)
+   if (VN_DEBUG(NO_SPARSE) ||
+       (sparse_count && non_sparse_only_count + sparse_count == count))
       physical_dev->sparse_binding_disabled = true;
 
    physical_dev->queue_family_properties = props;

Reply via email to