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

Author: Samuel Pitoiset <[email protected]>
Date:   Thu Jan  9 10:36:12 2020 +0100

radv: add explicit external subpass dependencies to meta operations

No functional changes because a subpass dependency with dstStageMask
set to VK_PIPELINE_STAGE_BOTTOM_OF_PIPE_BIT is a no-op.

Signed-off-by: Samuel Pitoiset <[email protected]>
Reviewed-by: Bas Nieuwenhuizen <[email protected]>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/merge_requests/3330>

---

 src/amd/vulkan/radv_meta_blit.c       | 67 +++++++++++++++++++++++++++++++++--
 src/amd/vulkan/radv_meta_blit2d.c     | 66 ++++++++++++++++++++++++++++++++--
 src/amd/vulkan/radv_meta_clear.c      | 67 +++++++++++++++++++++++++++++++++--
 src/amd/vulkan/radv_meta_decompress.c | 22 +++++++++++-
 src/amd/vulkan/radv_meta_fast_clear.c | 22 +++++++++++-
 src/amd/vulkan/radv_meta_resolve.c    | 22 +++++++++++-
 src/amd/vulkan/radv_meta_resolve_fs.c | 44 +++++++++++++++++++++--
 7 files changed, 296 insertions(+), 14 deletions(-)

diff --git a/src/amd/vulkan/radv_meta_blit.c b/src/amd/vulkan/radv_meta_blit.c
index 16c5b93c093..c19c1203db6 100644
--- a/src/amd/vulkan/radv_meta_blit.c
+++ b/src/amd/vulkan/radv_meta_blit.c
@@ -959,7 +959,27 @@ radv_device_init_meta_blit_color(struct radv_device 
*device, bool on_demand)
                                                                
.preserveAttachmentCount = 0,
                                                                
.pPreserveAttachments = NULL,
                                                        },
-                                                       .dependencyCount = 0,
+                                                       .dependencyCount = 2,
+                                                       .pDependencies = 
(VkSubpassDependency[]) {
+                                                               {
+                                                                       
.srcSubpass = VK_SUBPASS_EXTERNAL,
+                                                                       
.dstSubpass = 0,
+                                                                       
.srcStageMask = VK_PIPELINE_STAGE_TOP_OF_PIPE_BIT,
+                                                                       
.dstStageMask = VK_PIPELINE_STAGE_BOTTOM_OF_PIPE_BIT,
+                                                                       
.srcAccessMask = 0,
+                                                                       
.dstAccessMask = 0,
+                                                                       
.dependencyFlags = 0
+                                                               },
+                                                               {
+                                                                       
.srcSubpass = 0,
+                                                                       
.dstSubpass = VK_SUBPASS_EXTERNAL,
+                                                                       
.srcStageMask = VK_PIPELINE_STAGE_TOP_OF_PIPE_BIT,
+                                                                       
.dstStageMask = VK_PIPELINE_STAGE_BOTTOM_OF_PIPE_BIT,
+                                                                       
.srcAccessMask = 0,
+                                                                       
.dstAccessMask = 0,
+                                                                       
.dependencyFlags = 0
+                                                               }
+                                                       },
                                                }, &device->meta_state.alloc, 
&device->meta_state.blit.render_pass[key][j]);
                        if (result != VK_SUCCESS)
                                goto fail;
@@ -1019,7 +1039,27 @@ radv_device_init_meta_blit_depth(struct radv_device 
*device, bool on_demand)
                                                               
.preserveAttachmentCount = 0,
                                                               
.pPreserveAttachments = NULL,
                                                        },
-                                                       .dependencyCount = 0,
+                                                       .dependencyCount = 2,
+                                                       .pDependencies = 
(VkSubpassDependency[]) {
+                                                               {
+                                                                       
.srcSubpass = VK_SUBPASS_EXTERNAL,
+                                                                       
.dstSubpass = 0,
+                                                                       
.srcStageMask = VK_PIPELINE_STAGE_TOP_OF_PIPE_BIT,
+                                                                       
.dstStageMask = VK_PIPELINE_STAGE_BOTTOM_OF_PIPE_BIT,
+                                                                       
.srcAccessMask = 0,
+                                                                       
.dstAccessMask = 0,
+                                                                       
.dependencyFlags = 0
+                                                               },
+                                                               {
+                                                                       
.srcSubpass = 0,
+                                                                       
.dstSubpass = VK_SUBPASS_EXTERNAL,
+                                                                       
.srcStageMask = VK_PIPELINE_STAGE_TOP_OF_PIPE_BIT,
+                                                                       
.dstStageMask = VK_PIPELINE_STAGE_BOTTOM_OF_PIPE_BIT,
+                                                                       
.srcAccessMask = 0,
+                                                                       
.dstAccessMask = 0,
+                                                                       
.dependencyFlags = 0
+                                                               }
+                                                       },
                                                }, &device->meta_state.alloc, 
&device->meta_state.blit.depth_only_rp[ds_layout]);
                if (result != VK_SUCCESS)
                        goto fail;
@@ -1076,7 +1116,28 @@ radv_device_init_meta_blit_stencil(struct radv_device 
*device, bool on_demand)
                                                               
.preserveAttachmentCount = 0,
                                                               
.pPreserveAttachments = NULL,
                                                       },
-                                                      .dependencyCount = 0,
+                                                      .dependencyCount = 2,
+                                                      .pDependencies = 
(VkSubpassDependency[]) {
+                                                               {
+                                                                       
.srcSubpass = VK_SUBPASS_EXTERNAL,
+                                                                       
.dstSubpass = 0,
+                                                                       
.srcStageMask = VK_PIPELINE_STAGE_TOP_OF_PIPE_BIT,
+                                                                       
.dstStageMask = VK_PIPELINE_STAGE_BOTTOM_OF_PIPE_BIT,
+                                                                       
.srcAccessMask = 0,
+                                                                       
.dstAccessMask = 0,
+                                                                       
.dependencyFlags = 0
+                                                               },
+                                                               {
+                                                                       
.srcSubpass = 0,
+                                                                       
.dstSubpass = VK_SUBPASS_EXTERNAL,
+                                                                       
.srcStageMask = VK_PIPELINE_STAGE_TOP_OF_PIPE_BIT,
+                                                                       
.dstStageMask = VK_PIPELINE_STAGE_BOTTOM_OF_PIPE_BIT,
+                                                                       
.srcAccessMask = 0,
+                                                                       
.dstAccessMask = 0,
+                                                                       
.dependencyFlags = 0
+                                                               }
+                                                       },
+
                                         }, &device->meta_state.alloc, 
&device->meta_state.blit.stencil_only_rp[ds_layout]);
        }
        if (result != VK_SUCCESS)
diff --git a/src/amd/vulkan/radv_meta_blit2d.c 
b/src/amd/vulkan/radv_meta_blit2d.c
index 819941bc8b2..06d95ceeab4 100644
--- a/src/amd/vulkan/radv_meta_blit2d.c
+++ b/src/amd/vulkan/radv_meta_blit2d.c
@@ -817,7 +817,27 @@ blit2d_init_color_pipeline(struct radv_device *device,
                                                .preserveAttachmentCount = 0,
                                                .pPreserveAttachments = NULL,
                                                },
-                                               .dependencyCount = 0,
+                                               .dependencyCount = 2,
+                                               .pDependencies = 
(VkSubpassDependency[]) {
+                                                       {
+                                                               .srcSubpass = 
VK_SUBPASS_EXTERNAL,
+                                                               .dstSubpass = 0,
+                                                               .srcStageMask = 
VK_PIPELINE_STAGE_TOP_OF_PIPE_BIT,
+                                                               .dstStageMask = 
VK_PIPELINE_STAGE_BOTTOM_OF_PIPE_BIT,
+                                                               .srcAccessMask 
= 0,
+                                                               .dstAccessMask 
= 0,
+                                                               
.dependencyFlags = 0
+                                                       },
+                                                       {
+                                                               .srcSubpass = 0,
+                                                               .dstSubpass = 
VK_SUBPASS_EXTERNAL,
+                                                               .srcStageMask = 
VK_PIPELINE_STAGE_TOP_OF_PIPE_BIT,
+                                                               .dstStageMask = 
VK_PIPELINE_STAGE_BOTTOM_OF_PIPE_BIT,
+                                                               .srcAccessMask 
= 0,
+                                                               .dstAccessMask 
= 0,
+                                                               
.dependencyFlags = 0
+                                                       }
+                                               },
                                        }, &device->meta_state.alloc, 
&device->meta_state.blit2d_render_passes[fs_key][dst_layout]);
                }
        }
@@ -988,7 +1008,27 @@ blit2d_init_depth_only_pipeline(struct radv_device 
*device,
                                                                       
.preserveAttachmentCount = 0,
                                                                       
.pPreserveAttachments = NULL,
                                                               },
-                                                              .dependencyCount 
= 0,
+                                                              .dependencyCount 
= 2,
+                                                              .pDependencies = 
(VkSubpassDependency[]) {
+                                                               {
+                                                                       
.srcSubpass = VK_SUBPASS_EXTERNAL,
+                                                                       
.dstSubpass = 0,
+                                                                       
.srcStageMask = VK_PIPELINE_STAGE_TOP_OF_PIPE_BIT,
+                                                                       
.dstStageMask = VK_PIPELINE_STAGE_BOTTOM_OF_PIPE_BIT,
+                                                                       
.srcAccessMask = 0,
+                                                                       
.dstAccessMask = 0,
+                                                                       
.dependencyFlags = 0
+                                                               },
+                                                               {
+                                                                       
.srcSubpass = 0,
+                                                                       
.dstSubpass = VK_SUBPASS_EXTERNAL,
+                                                                       
.srcStageMask = VK_PIPELINE_STAGE_TOP_OF_PIPE_BIT,
+                                                                       
.dstStageMask = VK_PIPELINE_STAGE_BOTTOM_OF_PIPE_BIT,
+                                                                       
.srcAccessMask = 0,
+                                                                       
.dstAccessMask = 0,
+                                                                       
.dependencyFlags = 0
+                                                               }
+                                                       },
                                                        }, 
&device->meta_state.alloc, &device->meta_state.blit2d_depth_only_rp[ds_layout]);
                }
        }
@@ -1158,7 +1198,27 @@ blit2d_init_stencil_only_pipeline(struct radv_device 
*device,
                                                                       
.preserveAttachmentCount = 0,
                                                                       
.pPreserveAttachments = NULL,
                                                               },
-                                                              .dependencyCount 
= 0,
+                                                              .dependencyCount 
= 2,
+                                                              .pDependencies = 
(VkSubpassDependency[]) {
+                                                               {
+                                                                       
.srcSubpass = VK_SUBPASS_EXTERNAL,
+                                                                       
.dstSubpass = 0,
+                                                                       
.srcStageMask = VK_PIPELINE_STAGE_TOP_OF_PIPE_BIT,
+                                                                       
.dstStageMask = VK_PIPELINE_STAGE_BOTTOM_OF_PIPE_BIT,
+                                                                       
.srcAccessMask = 0,
+                                                                       
.dstAccessMask = 0,
+                                                                       
.dependencyFlags = 0
+                                                               },
+                                                               {
+                                                                       
.srcSubpass = 0,
+                                                                       
.dstSubpass = VK_SUBPASS_EXTERNAL,
+                                                                       
.srcStageMask = VK_PIPELINE_STAGE_TOP_OF_PIPE_BIT,
+                                                                       
.dstStageMask = VK_PIPELINE_STAGE_BOTTOM_OF_PIPE_BIT,
+                                                                       
.srcAccessMask = 0,
+                                                                       
.dstAccessMask = 0,
+                                                                       
.dependencyFlags = 0
+                                                               }
+                                                       },
                                                       }, 
&device->meta_state.alloc, 
&device->meta_state.blit2d_stencil_only_rp[ds_layout]);
                }
        }
diff --git a/src/amd/vulkan/radv_meta_clear.c b/src/amd/vulkan/radv_meta_clear.c
index f57cbba68fe..6a66665d06d 100644
--- a/src/amd/vulkan/radv_meta_clear.c
+++ b/src/amd/vulkan/radv_meta_clear.c
@@ -235,7 +235,27 @@ create_color_renderpass(struct radv_device *device,
                                                       .preserveAttachmentCount 
= 0,
                                                       .pPreserveAttachments = 
NULL,
                                               },
-                                                               
.dependencyCount = 0,
+                                                       .dependencyCount = 2,
+                                                       .pDependencies = 
(VkSubpassDependency[]) {
+                                                               {
+                                                                       
.srcSubpass = VK_SUBPASS_EXTERNAL,
+                                                                       
.dstSubpass = 0,
+                                                                       
.srcStageMask = VK_PIPELINE_STAGE_TOP_OF_PIPE_BIT,
+                                                                       
.dstStageMask = VK_PIPELINE_STAGE_BOTTOM_OF_PIPE_BIT,
+                                                                       
.srcAccessMask = 0,
+                                                                       
.dstAccessMask = 0,
+                                                                       
.dependencyFlags = 0
+                                                               },
+                                                               {
+                                                                       
.srcSubpass = 0,
+                                                                       
.dstSubpass = VK_SUBPASS_EXTERNAL,
+                                                                       
.srcStageMask = VK_PIPELINE_STAGE_TOP_OF_PIPE_BIT,
+                                                                       
.dstStageMask = VK_PIPELINE_STAGE_BOTTOM_OF_PIPE_BIT,
+                                                                       
.srcAccessMask = 0,
+                                                                       
.dstAccessMask = 0,
+                                                                       
.dependencyFlags = 0
+                                                               }
+                                                       },
                                                                         }, 
&device->meta_state.alloc, pass);
        mtx_unlock(&device->meta_state.mtx);
        return result;
@@ -586,7 +606,27 @@ create_depthstencil_renderpass(struct radv_device *device,
                                                       .preserveAttachmentCount 
= 0,
                                                       .pPreserveAttachments = 
NULL,
                                               },
-                                                               
.dependencyCount = 0,
+                                                       .dependencyCount = 2,
+                                                       .pDependencies = 
(VkSubpassDependency[]) {
+                                                               {
+                                                                       
.srcSubpass = VK_SUBPASS_EXTERNAL,
+                                                                       
.dstSubpass = 0,
+                                                                       
.srcStageMask = VK_PIPELINE_STAGE_TOP_OF_PIPE_BIT,
+                                                                       
.dstStageMask = VK_PIPELINE_STAGE_BOTTOM_OF_PIPE_BIT,
+                                                                       
.srcAccessMask = 0,
+                                                                       
.dstAccessMask = 0,
+                                                                       
.dependencyFlags = 0
+                                                               },
+                                                               {
+                                                                       
.srcSubpass = 0,
+                                                                       
.dstSubpass = VK_SUBPASS_EXTERNAL,
+                                                                       
.srcStageMask = VK_PIPELINE_STAGE_TOP_OF_PIPE_BIT,
+                                                                       
.dstStageMask = VK_PIPELINE_STAGE_BOTTOM_OF_PIPE_BIT,
+                                                                       
.srcAccessMask = 0,
+                                                                       
.dstAccessMask = 0,
+                                                                       
.dependencyFlags = 0
+                                                               }
+                                                       }
                                                                         }, 
&device->meta_state.alloc, render_pass);
        mtx_unlock(&device->meta_state.mtx);
        return result;
@@ -2084,7 +2124,28 @@ radv_clear_image_layer(struct radv_cmd_buffer 
*cmd_buffer,
                                              .pAttachments = &att_desc,
                                              .subpassCount = 1,
                                              .pSubpasses = &subpass_desc,
-                                             },
+                                             .dependencyCount = 2,
+                                             .pDependencies = 
(VkSubpassDependency[]) {
+                                                       {
+                                                               .srcSubpass = 
VK_SUBPASS_EXTERNAL,
+                                                               .dstSubpass = 0,
+                                                               .srcStageMask = 
VK_PIPELINE_STAGE_TOP_OF_PIPE_BIT,
+                                                               .dstStageMask = 
VK_PIPELINE_STAGE_BOTTOM_OF_PIPE_BIT,
+                                                               .srcAccessMask 
= 0,
+                                                               .dstAccessMask 
= 0,
+                                                               
.dependencyFlags = 0
+                                                       },
+                                                       {
+                                                               .srcSubpass = 0,
+                                                               .dstSubpass = 
VK_SUBPASS_EXTERNAL,
+                                                               .srcStageMask = 
VK_PIPELINE_STAGE_TOP_OF_PIPE_BIT,
+                                                               .dstStageMask = 
VK_PIPELINE_STAGE_BOTTOM_OF_PIPE_BIT,
+                                                               .srcAccessMask 
= 0,
+                                                               .dstAccessMask 
= 0,
+                                                               
.dependencyFlags = 0
+                                                       }
+                                               }
+                                       },
                              &cmd_buffer->pool->alloc,
                              &pass);
 
diff --git a/src/amd/vulkan/radv_meta_decompress.c 
b/src/amd/vulkan/radv_meta_decompress.c
index 3e6c6472018..d2cb3f08986 100644
--- a/src/amd/vulkan/radv_meta_decompress.c
+++ b/src/amd/vulkan/radv_meta_decompress.c
@@ -78,7 +78,27 @@ create_pass(struct radv_device *device,
                                                       .preserveAttachmentCount 
= 0,
                                                       .pPreserveAttachments = 
NULL,
                                               },
-                                                               
.dependencyCount = 0,
+                                                       .dependencyCount = 2,
+                                                       .pDependencies = 
(VkSubpassDependency[]) {
+                                                               {
+                                                                       
.srcSubpass = VK_SUBPASS_EXTERNAL,
+                                                                       
.dstSubpass = 0,
+                                                                       
.srcStageMask = VK_PIPELINE_STAGE_TOP_OF_PIPE_BIT,
+                                                                       
.dstStageMask = VK_PIPELINE_STAGE_BOTTOM_OF_PIPE_BIT,
+                                                                       
.srcAccessMask = 0,
+                                                                       
.dstAccessMask = 0,
+                                                                       
.dependencyFlags = 0
+                                                               },
+                                                               {
+                                                                       
.srcSubpass = 0,
+                                                                       
.dstSubpass = VK_SUBPASS_EXTERNAL,
+                                                                       
.srcStageMask = VK_PIPELINE_STAGE_TOP_OF_PIPE_BIT,
+                                                                       
.dstStageMask = VK_PIPELINE_STAGE_BOTTOM_OF_PIPE_BIT,
+                                                                       
.srcAccessMask = 0,
+                                                                       
.dstAccessMask = 0,
+                                                                       
.dependencyFlags = 0
+                                                               }
+                                                       },
                                                                   },
                                       alloc,
                                       pass);
diff --git a/src/amd/vulkan/radv_meta_fast_clear.c 
b/src/amd/vulkan/radv_meta_fast_clear.c
index 8e54c7286aa..84646a8b5dd 100644
--- a/src/amd/vulkan/radv_meta_fast_clear.c
+++ b/src/amd/vulkan/radv_meta_fast_clear.c
@@ -223,7 +223,27 @@ create_pass(struct radv_device *device)
                                                       .preserveAttachmentCount 
= 0,
                                                       .pPreserveAttachments = 
NULL,
                                               },
-                                                               
.dependencyCount = 0,
+                                                       .dependencyCount = 2,
+                                                       .pDependencies = 
(VkSubpassDependency[]) {
+                                                               {
+                                                                       
.srcSubpass = VK_SUBPASS_EXTERNAL,
+                                                                       
.dstSubpass = 0,
+                                                                       
.srcStageMask = VK_PIPELINE_STAGE_TOP_OF_PIPE_BIT,
+                                                                       
.dstStageMask = VK_PIPELINE_STAGE_BOTTOM_OF_PIPE_BIT,
+                                                                       
.srcAccessMask = 0,
+                                                                       
.dstAccessMask = 0,
+                                                                       
.dependencyFlags = 0
+                                                               },
+                                                               {
+                                                                       
.srcSubpass = 0,
+                                                                       
.dstSubpass = VK_SUBPASS_EXTERNAL,
+                                                                       
.srcStageMask = VK_PIPELINE_STAGE_TOP_OF_PIPE_BIT,
+                                                                       
.dstStageMask = VK_PIPELINE_STAGE_BOTTOM_OF_PIPE_BIT,
+                                                                       
.srcAccessMask = 0,
+                                                                       
.dstAccessMask = 0,
+                                                                       
.dependencyFlags = 0
+                                                               }
+                                                       },
                                       },
                                       alloc,
                                       
&device->meta_state.fast_clear_flush.pass);
diff --git a/src/amd/vulkan/radv_meta_resolve.c 
b/src/amd/vulkan/radv_meta_resolve.c
index 8404a68ca1e..ed66a911284 100644
--- a/src/amd/vulkan/radv_meta_resolve.c
+++ b/src/amd/vulkan/radv_meta_resolve.c
@@ -97,7 +97,27 @@ create_pass(struct radv_device *device, VkFormat vk_format, 
VkRenderPass *pass)
                                                       .preserveAttachmentCount 
= 0,
                                                       .pPreserveAttachments = 
NULL,
                                               },
-                                                               
.dependencyCount = 0,
+                                                       .dependencyCount = 2,
+                                                       .pDependencies = 
(VkSubpassDependency[]) {
+                                                               {
+                                                                       
.srcSubpass = VK_SUBPASS_EXTERNAL,
+                                                                       
.dstSubpass = 0,
+                                                                       
.srcStageMask = VK_PIPELINE_STAGE_TOP_OF_PIPE_BIT,
+                                                                       
.dstStageMask = VK_PIPELINE_STAGE_BOTTOM_OF_PIPE_BIT,
+                                                                       
.srcAccessMask = 0,
+                                                                       
.dstAccessMask = 0,
+                                                                       
.dependencyFlags = 0
+                                                               },
+                                                               {
+                                                                       
.srcSubpass = 0,
+                                                                       
.dstSubpass = VK_SUBPASS_EXTERNAL,
+                                                                       
.srcStageMask = VK_PIPELINE_STAGE_TOP_OF_PIPE_BIT,
+                                                                       
.dstStageMask = VK_PIPELINE_STAGE_BOTTOM_OF_PIPE_BIT,
+                                                                       
.srcAccessMask = 0,
+                                                                       
.dstAccessMask = 0,
+                                                                       
.dependencyFlags = 0
+                                                               }
+                                                       },
                                                                         },
                                       alloc,
                                       pass);
diff --git a/src/amd/vulkan/radv_meta_resolve_fs.c 
b/src/amd/vulkan/radv_meta_resolve_fs.c
index 35a04c24a9b..2e8d40f04af 100644
--- a/src/amd/vulkan/radv_meta_resolve_fs.c
+++ b/src/amd/vulkan/radv_meta_resolve_fs.c
@@ -231,7 +231,27 @@ create_resolve_pipeline(struct radv_device *device,
                                                .preserveAttachmentCount = 0,
                                                .pPreserveAttachments = NULL,
                                        },
-                                       .dependencyCount = 0,
+                                       .dependencyCount = 2,
+                                       .pDependencies = 
(VkSubpassDependency[]) {
+                                               {
+                                                       .srcSubpass = 
VK_SUBPASS_EXTERNAL,
+                                                       .dstSubpass = 0,
+                                                       .srcStageMask = 
VK_PIPELINE_STAGE_TOP_OF_PIPE_BIT,
+                                                       .dstStageMask = 
VK_PIPELINE_STAGE_BOTTOM_OF_PIPE_BIT,
+                                                       .srcAccessMask = 0,
+                                                       .dstAccessMask = 0,
+                                                       .dependencyFlags = 0
+                                               },
+                                               {
+                                                       .srcSubpass = 0,
+                                                       .dstSubpass = 
VK_SUBPASS_EXTERNAL,
+                                                       .srcStageMask = 
VK_PIPELINE_STAGE_TOP_OF_PIPE_BIT,
+                                                       .dstStageMask = 
VK_PIPELINE_STAGE_BOTTOM_OF_PIPE_BIT,
+                                                       .srcAccessMask = 0,
+                                                       .dstAccessMask = 0,
+                                                       .dependencyFlags = 0
+                                               }
+                                       },
                                }, &device->meta_state.alloc, rp + dst_layout);
        }
 
@@ -555,7 +575,27 @@ create_depth_stencil_resolve_pipeline(struct radv_device 
*device,
                                                        
.preserveAttachmentCount = 0,
                                                        .pPreserveAttachments = 
NULL,
                                                },
-                                               .dependencyCount = 0,
+                                               .dependencyCount = 2,
+                                               .pDependencies = 
(VkSubpassDependency[]) {
+                                                       {
+                                                               .srcSubpass = 
VK_SUBPASS_EXTERNAL,
+                                                               .dstSubpass = 0,
+                                                               .srcStageMask = 
VK_PIPELINE_STAGE_TOP_OF_PIPE_BIT,
+                                                               .dstStageMask = 
VK_PIPELINE_STAGE_BOTTOM_OF_PIPE_BIT,
+                                                               .srcAccessMask 
= 0,
+                                                               .dstAccessMask 
= 0,
+                                                               
.dependencyFlags = 0
+                                                       },
+                                                       {
+                                                               .srcSubpass = 0,
+                                                               .dstSubpass = 
VK_SUBPASS_EXTERNAL,
+                                                               .srcStageMask = 
VK_PIPELINE_STAGE_TOP_OF_PIPE_BIT,
+                                                               .dstStageMask = 
VK_PIPELINE_STAGE_BOTTOM_OF_PIPE_BIT,
+                                                               .srcAccessMask 
= 0,
+                                                               .dstAccessMask 
= 0,
+                                                               
.dependencyFlags = 0
+                                                       }
+                                               },
                                        }, &device->meta_state.alloc, 
render_pass);
        }
 

_______________________________________________
mesa-commit mailing list
[email protected]
https://lists.freedesktop.org/mailman/listinfo/mesa-commit

Reply via email to