Module: Mesa
Branch: master
Commit: 505fad04f10eee1efdfcd8986b4d484b49d39986
URL:    
http://cgit.freedesktop.org/mesa/mesa/commit/?id=505fad04f10eee1efdfcd8986b4d484b49d39986

Author: Tom Stellard <thomas.stell...@amd.com>
Date:   Mon Aug 26 13:06:53 2013 -0700

r600g/compute: Fix bug in compute memory pool

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 files 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 a02df84..75696d2 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;
                        }
                }

_______________________________________________
mesa-commit mailing list
mesa-commit@lists.freedesktop.org
http://lists.freedesktop.org/mailman/listinfo/mesa-commit

Reply via email to