Mesa (master): freedreno/a5xx: rename invalidate_resource()
Rob Clark
robclark at kemper.freedesktop.org
Thu Oct 26 12:40:04 UTC 2017
Module: Mesa
Branch: master
Commit: a6bd23e43bd18845c5364156346ad457915b2189
URL: http://cgit.freedesktop.org/mesa/mesa/commit/?id=a6bd23e43bd18845c5364156346ad457915b2189
Author: Rob Clark <robdclark at gmail.com>
Date: Thu Oct 5 17:07:27 2017 -0400
freedreno/a5xx: rename invalidate_resource()
This is different from pipe->invalidate_resource()..
Signed-off-by: Rob Clark <robdclark at gmail.com>
---
src/gallium/drivers/freedreno/freedreno_resource.c | 17 +++++++++--------
1 file changed, 9 insertions(+), 8 deletions(-)
diff --git a/src/gallium/drivers/freedreno/freedreno_resource.c b/src/gallium/drivers/freedreno/freedreno_resource.c
index 266908c0bc..31686786e3 100644
--- a/src/gallium/drivers/freedreno/freedreno_resource.c
+++ b/src/gallium/drivers/freedreno/freedreno_resource.c
@@ -48,14 +48,15 @@
/* XXX this should go away, needed for 'struct winsys_handle' */
#include "state_tracker/drm_driver.h"
+/**
+ * Go through the entire state and see if the resource is bound
+ * anywhere. If it is, mark the relevant state as dirty. This is
+ * called on realloc_bo to ensure the neccessary state is re-
+ * emitted so the GPU looks at the new backing bo.
+ */
static void
-fd_invalidate_resource(struct fd_context *ctx, struct pipe_resource *prsc)
+rebind_resource(struct fd_context *ctx, struct pipe_resource *prsc)
{
- /* Go through the entire state and see if the resource is bound
- * anywhere. If it is, mark the relevant state as dirty. This is called on
- * realloc_bo.
- */
-
/* VBOs */
for (unsigned i = 0; i < ctx->vtx.vertexbuf.count && !(ctx->dirty & FD_DIRTY_VTXBUF); i++) {
if (ctx->vtx.vertexbuf.vb[i].buffer.resource == prsc)
@@ -487,7 +488,7 @@ fd_resource_transfer_map(struct pipe_context *pctx,
realloc_bo(rsc, fd_bo_size(rsc->bo));
if (rsc->stencil)
realloc_bo(rsc->stencil, fd_bo_size(rsc->stencil->bo));
- fd_invalidate_resource(ctx, prsc);
+ rebind_resource(ctx, prsc);
} else if ((usage & PIPE_TRANSFER_WRITE) &&
prsc->target == PIPE_BUFFER &&
!util_ranges_intersect(&rsc->valid_buffer_range,
@@ -524,7 +525,7 @@ fd_resource_transfer_map(struct pipe_context *pctx,
if (ctx->screen->reorder && busy && !(usage & PIPE_TRANSFER_READ)) {
if (fd_try_shadow_resource(ctx, rsc, level, usage, box)) {
needs_flush = busy = false;
- fd_invalidate_resource(ctx, prsc);
+ rebind_resource(ctx, prsc);
}
}
More information about the mesa-commit
mailing list