From: Bruno Jiménez Date: Wed, 16 Jul 2014 21:12:46 +0000 (+0200) Subject: r600g/compute: Quick exit if there's nothing to add to the pool X-Git-Url: https://git.libre-soc.org/?a=commitdiff_plain;h=e7bda844e665c56c22d6ed0d801ee670d4137b1a;p=mesa.git r600g/compute: Quick exit if there's nothing to add to the pool This way we can avoid defragmenting the pool, even if it is needed to defragment it, and looping again through the list of unallocated items. Reviewed-by: Tom Stellard --- diff --git a/src/gallium/drivers/r600/compute_memory_pool.c b/src/gallium/drivers/r600/compute_memory_pool.c index b158f5e36be..75a8bd30dd7 100644 --- a/src/gallium/drivers/r600/compute_memory_pool.c +++ b/src/gallium/drivers/r600/compute_memory_pool.c @@ -262,6 +262,10 @@ int compute_memory_finalize_pending(struct compute_memory_pool* pool, unallocated += align(item->size_in_dw, ITEM_ALIGNMENT); } + if (unallocated == 0) { + return 0; + } + if (pool->status & POOL_FRAGMENTED) { compute_memory_defrag(pool, pipe); }