From 4fe1abe3dd7cd0103216ab75d16cc734e21c4aa0 Mon Sep 17 00:00:00 2001 From: Silvio Vilerino Date: Sat, 25 Oct 2025 20:45:20 -0400 Subject: [PATCH] d3d12: Support PIPE_BIND_SHARED resource creation Reviewed-by: Pohsiang (John) Hsu Reviewed-by: Yubo Xie Part-of: --- src/gallium/drivers/d3d12/d3d12_resource.cpp | 6 ++++++ 1 file changed, 6 insertions(+) diff --git a/src/gallium/drivers/d3d12/d3d12_resource.cpp b/src/gallium/drivers/d3d12/d3d12_resource.cpp index 4db371b49c6..a1a0e81df26 100644 --- a/src/gallium/drivers/d3d12/d3d12_resource.cpp +++ b/src/gallium/drivers/d3d12/d3d12_resource.cpp @@ -354,6 +354,9 @@ init_texture(struct d3d12_screen *screen, D3D12_HEAP_FLAG_CREATE_NOT_RESIDENT : D3D12_HEAP_FLAG_NONE; init_residency = screen->support_create_not_resident ? d3d12_evicted : d3d12_resident; + if (templ->bind & PIPE_BIND_SHARED) + heap_flags |= D3D12_HEAP_FLAG_SHARED; + hres = screen->dev10->CreateCommittedResource3(&heap_pris, heap_flags, &desc1, @@ -382,6 +385,9 @@ init_texture(struct d3d12_screen *screen, D3D12_HEAP_FLAG_CREATE_NOT_RESIDENT : D3D12_HEAP_FLAG_NONE; init_residency = screen->support_create_not_resident ? d3d12_evicted : d3d12_resident; + if (templ->bind & PIPE_BIND_SHARED) + heap_flags |= D3D12_HEAP_FLAG_SHARED; + hres = screen->dev->CreateCommittedResource(&heap_pris, heap_flags, &desc,