From: Icecream95 Date: Sat, 4 Apr 2020 23:49:07 +0000 (+1200) Subject: panfrost: Mark PIPE_BUFFER BOs as not renderable X-Git-Url: https://git.libre-soc.org/?a=commitdiff_plain;h=18c067f9f099d54eee1d5713b24ecca52295987c;p=mesa.git panfrost: Mark PIPE_BUFFER BOs as not renderable Without this, memory usage explodes by 16x due to height alignment. Closes: #2715 Reviewed-by: Alyssa Rosenzweig Part-of: --- diff --git a/src/gallium/drivers/panfrost/pan_resource.c b/src/gallium/drivers/panfrost/pan_resource.c index 8b57abada3e..0506163f291 100644 --- a/src/gallium/drivers/panfrost/pan_resource.c +++ b/src/gallium/drivers/panfrost/pan_resource.c @@ -280,7 +280,8 @@ panfrost_setup_slices(struct panfrost_resource *pres, size_t *bo_size) * makes code a lot simpler */ bool renderable = res->bind & - (PIPE_BIND_RENDER_TARGET | PIPE_BIND_DEPTH_STENCIL); + (PIPE_BIND_RENDER_TARGET | PIPE_BIND_DEPTH_STENCIL) && + res->target != PIPE_BUFFER; bool afbc = pres->layout == MALI_TEXTURE_AFBC; bool tiled = pres->layout == MALI_TEXTURE_TILED; bool should_align = renderable || tiled;