iris: Don't replace backing storage for exported buffers.

We already gave out the old BO...or acquired it from somewhere which
may be affecting it.  We simply can't replace the backing store.

Reviewed-by: Ian Romanick <ian.d.romanick@intel.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/19209>
This commit is contained in:
Kenneth Graunke 2022-09-29 18:06:42 -07:00 committed by Marge Bot
parent 6954a8ddbe
commit f112add554

View file

@ -1943,6 +1943,10 @@ iris_invalidate_resource(struct pipe_context *ctx,
if (res->bo->gem_handle && res->bo->real.userptr)
return;
/* Nor can we allocate buffers we imported or exported. */
if (iris_bo_is_external(res->bo))
return;
struct iris_bo *old_bo = res->bo;
struct iris_bo *new_bo =
iris_bo_alloc(screen->bufmgr, res->bo->name, resource->width0,