zink: track whether current swapchain has data
duplicated from resource object since swapchains can be shared Reviewed-by: Adam Jackson <ajax@redhat.com> Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/17149>
This commit is contained in:

committed by
Marge Bot

parent
c1ce1889db
commit
983dcda16a
@@ -507,6 +507,7 @@ kopper_acquire(struct zink_screen *screen, struct zink_resource *res, uint64_t t
|
||||
res->obj->indefinite_acquire = true;
|
||||
p_atomic_inc(&cdt->swapchain->num_acquires);
|
||||
}
|
||||
cdt->swapchain->dt_has_data = false;
|
||||
res->obj->dt_has_data = false;
|
||||
return VK_SUCCESS;
|
||||
}
|
||||
@@ -573,6 +574,7 @@ zink_kopper_acquire_submit(struct zink_screen *screen, struct zink_resource *res
|
||||
res->obj->acquired = true;
|
||||
/* this is now owned by the batch */
|
||||
cdt->swapchain->acquires[res->obj->dt_idx] = VK_NULL_HANDLE;
|
||||
cdt->swapchain->dt_has_data = true;
|
||||
return res->obj->acquire;
|
||||
}
|
||||
|
||||
|
@@ -43,6 +43,7 @@ struct kopper_swapchain {
|
||||
unsigned num_acquires;
|
||||
unsigned max_acquires;
|
||||
unsigned async_presents;
|
||||
bool dt_has_data;
|
||||
};
|
||||
|
||||
enum kopper_type {
|
||||
|
Reference in New Issue
Block a user