summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorMike Blumenkrantz <michael.blumenkrantz@gmail.com>2021-03-22 13:58:37 -0400
committerMarge Bot <eric+marge@anholt.net>2021-03-30 15:12:59 +0000
commitcb580af02a40c7f65b5c8445e93d22447c738cde (patch)
tree6061365ba32d1c5766ee58856a286bb44d65639f
parent11926342e398b072706a9229329ec8dbd7748863 (diff)
zink: remove zink_create_fence()
merge this down into batch state creation to keep fence file complexity down Reviewed-by: Dave Airlie <airlied@redhat.com> Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/9885>
-rw-r--r--src/gallium/drivers/zink/zink_batch.c9
-rw-r--r--src/gallium/drivers/zink/zink_fence.c20
-rw-r--r--src/gallium/drivers/zink/zink_fence.h3
3 files changed, 6 insertions, 26 deletions
diff --git a/src/gallium/drivers/zink/zink_batch.c b/src/gallium/drivers/zink/zink_batch.c
index 2ea6e27b028..33bbae2def3 100644
--- a/src/gallium/drivers/zink/zink_batch.c
+++ b/src/gallium/drivers/zink/zink_batch.c
@@ -171,9 +171,12 @@ create_batch_state(struct zink_context *ctx)
util_dynarray_init(&bs->zombie_samplers, NULL);
util_dynarray_init(&bs->persistent_resources, NULL);
- if (!zink_create_fence(screen, bs))
- /* this destroys the batch state on failure */
- return NULL;
+ VkFenceCreateInfo fci = {};
+ fci.sType = VK_STRUCTURE_TYPE_FENCE_CREATE_INFO;
+
+ if (vkCreateFence(screen->dev, &fci, NULL, &bs->fence.fence) != VK_SUCCESS)
+ goto fail;
+ pipe_reference_init(&bs->fence.reference, 1);
simple_mtx_init(&bs->fence.resource_mtx, mtx_plain);
return bs;
diff --git a/src/gallium/drivers/zink/zink_fence.c b/src/gallium/drivers/zink/zink_fence.c
index 3a76bddc237..97e7c2d84d2 100644
--- a/src/gallium/drivers/zink/zink_fence.c
+++ b/src/gallium/drivers/zink/zink_fence.c
@@ -55,26 +55,6 @@ destroy_fence(struct zink_screen *screen, struct zink_fence *fence)
zink_batch_state_destroy(screen, zink_batch_state(fence));
}
-bool
-zink_create_fence(struct zink_screen *screen, struct zink_batch_state *bs)
-{
- struct zink_fence *fence = zink_fence(bs);
-
- VkFenceCreateInfo fci = {};
- fci.sType = VK_STRUCTURE_TYPE_FENCE_CREATE_INFO;
-
- if (vkCreateFence(screen->dev, &fci, NULL, &fence->fence) != VK_SUCCESS) {
- debug_printf("vkCreateFence failed\n");
- goto fail;
- }
-
- pipe_reference_init(&fence->reference, 1);
- return true;
-fail:
- destroy_fence(screen, fence);
- return false;
-}
-
void
zink_fence_reference(struct zink_screen *screen,
struct zink_fence **ptr,
diff --git a/src/gallium/drivers/zink/zink_fence.h b/src/gallium/drivers/zink/zink_fence.h
index c35a5f1c327..59a4a65f86e 100644
--- a/src/gallium/drivers/zink/zink_fence.h
+++ b/src/gallium/drivers/zink/zink_fence.h
@@ -52,9 +52,6 @@ zink_fence(void *pfence)
return (struct zink_fence *)pfence;
}
-bool
-zink_create_fence(struct zink_screen *screen, struct zink_batch_state *bs);
-
void
zink_fence_reference(struct zink_screen *screen,
struct zink_fence **ptr,