zink: prune dmabuf export tracking when adding resource binds
this avoids invalid access for the stack resource in add_resource_bind() when adding a new bind to an exportable resource cc: mesa-stable Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/27395>
This commit is contained in:

committed by
Marge Bot

parent
60d2ea83e8
commit
7b7a581a52
@@ -1756,6 +1756,11 @@ add_resource_bind(struct zink_context *ctx, struct zink_resource *res, unsigned
|
||||
box.depth = util_num_layers(&res->base.b, i);
|
||||
ctx->base.resource_copy_region(&ctx->base, &res->base.b, i, 0, 0, 0, &staging.base.b, i, &box);
|
||||
}
|
||||
if (old_obj->exportable) {
|
||||
simple_mtx_lock(&ctx->batch.state->exportable_lock);
|
||||
_mesa_set_remove_key(&ctx->batch.state->dmabuf_exports, &staging);
|
||||
simple_mtx_unlock(&ctx->batch.state->exportable_lock);
|
||||
}
|
||||
zink_resource_object_reference(screen, &old_obj, NULL);
|
||||
return true;
|
||||
}
|
||||
|
Reference in New Issue
Block a user