venus: add VN_PERF_NO_MEMORY_SUBALLOC
authorYiwei Zhang <zzyiwei@chromium.org>
Thu, 17 Nov 2022 21:37:13 +0000 (21:37 +0000)
committerMarge Bot <emma+marge@anholt.net>
Fri, 2 Dec 2022 21:42:25 +0000 (21:42 +0000)
Make it easier for memory alignment debugging.

Signed-off-by: Yiwei Zhang <zzyiwei@chromium.org>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/19830>

src/virtio/vulkan/vn_common.c
src/virtio/vulkan/vn_common.h
src/virtio/vulkan/vn_device_memory.c

index 30a4a48..5c2424e 100644 (file)
@@ -38,6 +38,7 @@ static const struct debug_control vn_perf_options[] = {
    { "no_async_queue_submit", VN_PERF_NO_ASYNC_QUEUE_SUBMIT },
    { "no_event_feedback", VN_PERF_NO_EVENT_FEEDBACK },
    { "no_fence_feedback", VN_PERF_NO_FENCE_FEEDBACK },
+   { "no_memory_suballoc", VN_PERF_NO_MEMORY_SUBALLOC },
    { NULL, 0 },
    /* clang-format on */
 };
index 18dfb17..1f5ae05 100644 (file)
@@ -109,6 +109,7 @@ enum vn_perf {
    VN_PERF_NO_ASYNC_QUEUE_SUBMIT = 1ull << 2,
    VN_PERF_NO_EVENT_FEEDBACK = 1ull << 3,
    VN_PERF_NO_FENCE_FEEDBACK = 1ull << 4,
+   VN_PERF_NO_MEMORY_SUBALLOC = 1ull << 5,
 };
 
 typedef uint64_t vn_object_id;
index 56d0133..5aa4d96 100644 (file)
@@ -196,6 +196,9 @@ vn_device_memory_should_suballocate(const struct vn_device *dev,
    const struct vn_instance *instance = dev->physical_device->instance;
    const struct vn_renderer_info *renderer = &instance->renderer->info;
 
+   if (VN_PERF(NO_MEMORY_SUBALLOC))
+      return false;
+
    if (renderer->has_guest_vram)
       return false;