Changeset 593 in svn for branches/1.3/mem.c
- Timestamp:
- 2009-07-05T04:06:15Z (9 years ago)
- Location:
- branches/1.3
- Files:
-
- 2 edited
Legend:
- Unmodified
- Added
- Removed
-
branches/1.3
-
branches/1.3/mem.c
r394 r593 13 13 #include "xc_shm.h" 14 14 #include "align.h" 15 #include "utils.h" 15 16 16 17 #ifdef TEST 17 # define ALLOC_DEBUG18 #endif 19 #ifdef ALLOC_DEBUG18 # define DEBUG 19 #endif 20 #ifdef DEBUG 20 21 # define ALLOC_DEBUG_BLOCK_CHECK 21 22 #endif … … 91 92 realsize = ALIGN(realsize); 92 93 93 #ifdef ALLOC_DEBUG 94 fprintf(stderr, "avail: %d (%dKB). Allocate size: %d realsize: %d (%dKB)" 94 TRACE("avail: %d (%dKB). Allocate size: %d realsize: %d (%dKB)" 95 95 , mem->avail, mem->avail / 1024 96 96 , size 97 97 , realsize, realsize / 1024 98 98 ); 99 #endif100 99 do { 101 100 p = NULL; 102 101 if (mem->avail < realsize) { 103 #ifdef ALLOC_DEBUG 104 fprintf(stderr, " oom\n"); 105 #endif 102 TRACE("%s", " oom"); 106 103 break; 107 104 } … … 132 129 133 130 if (b == NULL) { 134 #ifdef ALLOC_DEBUG 135 fprintf(stderr, " no fit chunk\n"); 136 #endif 131 TRACE("%s", " no fit chunk"); 137 132 break; 138 133 } … … 149 144 if (cur->size == realsize) { 150 145 prev->next = cur->next; 151 #ifdef ALLOC_DEBUG 152 fprintf(stderr, " perfect fit. Got: %p\n", p); 153 #endif 146 TRACE(" perfect fit. Got: %p", p); 154 147 break; 155 148 } … … 169 162 */ 170 163 171 #ifdef ALLOC_DEBUG 172 fprintf(stderr, " -> avail: %d (%dKB). new next: %p offset: %d %dKB. Got: %p\n" 164 TRACE(" -> avail: %d (%dKB). new next: %p offset: %d %dKB. Got: %p" 173 165 , mem->avail, mem->avail / 1024 174 166 , newb … … 176 168 , p 177 169 ); 178 #endif179 170 prev->next = newb; 180 171 /* prev|cur|newb|next … … 193 184 194 185 cur = (xc_block_t *) (CHAR_PTR(p) - BLOCK_HEADER_SIZE()); 195 #ifdef ALLOC_DEBUG 196 fprintf(stderr, "freeing: %p", p); 197 fprintf(stderr, ", size=%d", cur->size); 198 #endif 186 TRACE("freeing: %p, size=%d", p, cur->size); 199 187 xc_block_check(cur); 200 188 assert((char*)mem < (char*)cur && (char*)cur < (char*)mem + mem->size); … … 211 199 size = cur->size; 212 200 213 #ifdef ALLOC_DEBUG 214 fprintf(stderr, ", avail %d (%dKB)", mem->avail, mem->avail / 1024); 215 #endif 201 TRACE(" avail %d (%dKB)", mem->avail, mem->avail / 1024); 216 202 mem->avail += size; 217 203 … … 221 207 b->next = cur->next; 222 208 cur = b; 223 #ifdef ALLOC_DEBUG 224 fprintf(stderr, ", combine prev"); 225 #endif 209 TRACE("%s", " combine prev"); 226 210 } 227 211 … … 231 215 cur->size += b->size; 232 216 cur->next = b->next; 233 #ifdef ALLOC_DEBUG 234 fprintf(stderr, ", combine next"); 235 #endif 236 } 237 #ifdef ALLOC_DEBUG 238 fprintf(stderr, " -> avail %d (%dKB)\n", mem->avail, mem->avail / 1024); 239 #endif 217 TRACE("%s", " combine next"); 218 } 219 TRACE(" -> avail %d (%dKB)", mem->avail, mem->avail / 1024); 240 220 return size; 241 221 }
Note: See TracChangeset
for help on using the changeset viewer.