The changes look good to me... That seems to be a much more sane way
to add the item to the beginning of the linked list.
I've tested this on CEDAR (Radeon 5400) without any OpenCL
regressions, and the only piglit change was that the new piglit test
created for this bug now passes.

--Aaron


On Tue, Aug 27, 2013 at 10:17 AM, Tom Stellard <t...@stellard.net> wrote:
> From: Tom Stellard <thomas.stell...@amd.com>
>
> When adding a new buffer to the beginning of the memory pool, we were
> accidentally deleting the buffer that was first in the buffer list.
> This was caused by a bug in the memory pool's linked list
> implementation.
> ---
>  src/gallium/drivers/r600/compute_memory_pool.c | 9 ++-------
>  1 file changed, 2 insertions(+), 7 deletions(-)
>
> diff --git a/src/gallium/drivers/r600/compute_memory_pool.c 
> b/src/gallium/drivers/r600/compute_memory_pool.c
> index 454af90..4846bfe 100644
> --- a/src/gallium/drivers/r600/compute_memory_pool.c
> +++ b/src/gallium/drivers/r600/compute_memory_pool.c
> @@ -337,14 +337,9 @@ void compute_memory_finalize_pending(struct 
> compute_memory_pool* pool,
>                                 }
>                         } else {
>                                 /* Add item to the front of the list */
> -                               item->next = pool->item_list->next;
> -                               if (pool->item_list->next) {
> -                                       pool->item_list->next->prev = item;
> -                               }
> +                               item->next = pool->item_list;
>                                 item->prev = pool->item_list->prev;
> -                               if (pool->item_list->prev) {
> -                                       pool->item_list->prev->next = item;
> -                               }
> +                               pool->item_list->prev = item;
>                                 pool->item_list = item;
>                         }
>                 }
> --
> 1.7.11.4
>
> _______________________________________________
> mesa-dev mailing list
> mesa-dev@lists.freedesktop.org
> http://lists.freedesktop.org/mailman/listinfo/mesa-dev
_______________________________________________
mesa-dev mailing list
mesa-dev@lists.freedesktop.org
http://lists.freedesktop.org/mailman/listinfo/mesa-dev

Reply via email to