From 5030adcbe05f2ae97826f645f43c612f774411e8 Mon Sep 17 00:00:00 2001 From: =?utf8?q?Marek=20Ol=C5=A1=C3=A1k?= Date: Sat, 6 Oct 2018 20:56:32 -0400 Subject: [PATCH] radeonsi: use copy_buffer in buffer_do_flush_region directly --- src/gallium/drivers/radeonsi/si_buffer.c | 15 ++++----------- 1 file changed, 4 insertions(+), 11 deletions(-) diff --git a/src/gallium/drivers/radeonsi/si_buffer.c b/src/gallium/drivers/radeonsi/si_buffer.c index a03a94453a4..c7260e06ccf 100644 --- a/src/gallium/drivers/radeonsi/si_buffer.c +++ b/src/gallium/drivers/radeonsi/si_buffer.c @@ -521,18 +521,11 @@ static void si_buffer_do_flush_region(struct pipe_context *ctx, struct r600_resource *rbuffer = r600_resource(transfer->resource); if (stransfer->staging) { - struct pipe_resource *dst, *src; - unsigned soffset; - struct pipe_box dma_box; - - dst = transfer->resource; - src = &stransfer->staging->b.b; - soffset = stransfer->offset + box->x % SI_MAP_BUFFER_ALIGNMENT; - - u_box_1d(soffset, box->width, &dma_box); - /* Copy the staging buffer into the original one. */ - ctx->resource_copy_region(ctx, dst, 0, box->x, 0, 0, src, 0, &dma_box); + si_copy_buffer((struct si_context*)ctx, transfer->resource, + &stransfer->staging->b.b, box->x, + stransfer->offset + box->x % SI_MAP_BUFFER_ALIGNMENT, + box->width); } util_range_add(&rbuffer->valid_buffer_range, box->x, -- 2.11.0