summaryrefslogtreecommitdiff
path: root/shared-core/radeon_mem.c
diff options
context:
space:
mode:
authorAlan Hourihane <alanh@fairlite.demon.co.uk>2003-03-25 00:29:14 +0000
committerAlan Hourihane <alanh@fairlite.demon.co.uk>2003-03-25 00:29:14 +0000
commitc14006ba9f0522875327998215150067d8ca6ea7 (patch)
tree08290dadd19103f357082bbd51dc9d6cea5f648a /shared-core/radeon_mem.c
parent0bd0dd2300e91707ae5a41a83eb37217fd8ad295 (diff)
XFree86 4.3.0 merge
Diffstat (limited to 'shared-core/radeon_mem.c')
-rw-r--r--shared-core/radeon_mem.c22
1 files changed, 16 insertions, 6 deletions
diff --git a/shared-core/radeon_mem.c b/shared-core/radeon_mem.c
index 3a2c8969..5c07c1af 100644
--- a/shared-core/radeon_mem.c
+++ b/shared-core/radeon_mem.c
@@ -118,7 +118,7 @@ static void free_block( struct mem_block *p )
p->size += q->size;
p->next = q->next;
p->next->prev = p;
- DRM_FREE(q, sizeof(*q));
+ DRM_FREE(q);
}
if (p->prev->pid == 0) {
@@ -126,10 +126,20 @@ static void free_block( struct mem_block *p )
q->size += p->size;
q->next = p->next;
q->next->prev = q;
- DRM_FREE(p, sizeof(*q));
+ DRM_FREE(p);
}
}
+static void print_heap( struct mem_block *heap )
+{
+ struct mem_block *p;
+
+ for (p = heap->next ; p != heap ; p = p->next)
+ DRM_DEBUG("0x%x..0x%x (0x%x) -- owner %d\n",
+ p->start, p->start + p->size,
+ p->size, p->pid);
+}
+
/* Initialize. How to check for an uninitialized heap?
*/
static int init_heap(struct mem_block **heap, int start, int size)
@@ -141,7 +151,7 @@ static int init_heap(struct mem_block **heap, int start, int size)
*heap = DRM_MALLOC(sizeof(**heap));
if (!*heap) {
- DRM_FREE( blocks, sizeof(*blocks) );
+ DRM_FREE( blocks );
return -ENOMEM;
}
@@ -181,7 +191,7 @@ void radeon_mem_release( struct mem_block *heap )
p->size += q->size;
p->next = q->next;
p->next->prev = p;
- DRM_FREE(q, sizeof(*q));
+ DRM_FREE(q);
}
}
}
@@ -198,10 +208,10 @@ void radeon_mem_takedown( struct mem_block **heap )
for (p = (*heap)->next ; p != *heap ; ) {
struct mem_block *q = p;
p = p->next;
- DRM_FREE(q, sizeof(*q));
+ DRM_FREE(q);
}
- DRM_FREE( *heap, sizeof(**heap) );
+ DRM_FREE( *heap );
*heap = 0;
}