From: Ilia Mirkin Date: Sat, 30 May 2020 06:47:42 +0000 (-0400) Subject: nouveau: allow invalidating coherent/persistent buffer backings X-Git-Url: https://git.libre-soc.org/?a=commitdiff_plain;h=6e1c47b98df384b46ff41ffbf9689a93c78c040d;p=mesa.git nouveau: allow invalidating coherent/persistent buffer backings This is needed to support the core's usage of coherent buffers for glVertex-style input. The reason why this was disallowed is that any mappings will be invalidated. Let the state tracker worry about that, and just reallocate when we're told. Signed-off-by: Ilia Mirkin Reviewed-by: Karol Herbst Cc: mesa-stable@lists.freedesktop.org Part-of: --- diff --git a/src/gallium/drivers/nouveau/nouveau_buffer.c b/src/gallium/drivers/nouveau/nouveau_buffer.c index 42f68fa9bdf..abb4105099a 100644 --- a/src/gallium/drivers/nouveau/nouveau_buffer.c +++ b/src/gallium/drivers/nouveau/nouveau_buffer.c @@ -850,11 +850,6 @@ nouveau_buffer_invalidate(struct pipe_context *pipe, if (unlikely(buf->base.bind & PIPE_BIND_SHARED)) return; - /* We can't touch persistent/coherent buffers */ - if (buf->base.flags & (PIPE_RESOURCE_FLAG_MAP_PERSISTENT | - PIPE_RESOURCE_FLAG_MAP_COHERENT)) - return; - /* If the buffer is sub-allocated and not currently being written, just * wipe the valid buffer range. Otherwise we have to create fresh * storage. (We don't keep track of fences for non-sub-allocated BO's.)