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>
This commit is contained in:
committed by
Marge Bot
parent
11926342e3
commit
cb580af02a
@@ -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;
|
||||
|
||||
@@ -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,
|
||||
|
||||
@@ -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,
|
||||
|
||||
Reference in New Issue
Block a user