Changeset c5613b7 in mainline for generic/src/mm/slab.c
- Timestamp:
- 2006-02-04T01:59:42Z (19 years ago)
- Branches:
- lfn, master, serial, ticket/834-toolchain-update, topic/msim-upgrade, topic/simplify-dev-export
- Children:
- 10e16a7
- Parents:
- 81e52f2a
- File:
-
- 1 edited
Legend:
- Unmodified
- Added
- Removed
-
generic/src/mm/slab.c
r81e52f2a rc5613b7 387 387 * no empty magazine is available and cannot be allocated 388 388 * 389 * Assume mag_cache[CPU->id].lock is held 390 * 389 391 * We have 2 magazines bound to processor. 390 392 * First try the current. … … 421 423 422 424 /* Flush last to magazine list */ 423 if (lastmag) 425 if (lastmag) { 426 spinlock_lock(&cache->lock); 424 427 list_prepend(&lastmag->link, &cache->magazines); 428 spinlock_unlock(&cache->lock); 429 } 425 430 /* Move current as last, save new as current */ 426 431 cache->mag_cache[CPU->id].last = cmag; … … 514 519 spinlock_initialize(&cache->lock, "cachelock"); 515 520 if (! (cache->flags & SLAB_CACHE_NOMAGAZINE)) { 516 for (i=0; i < config.cpu_count; i++) {521 for (i=0; i < config.cpu_count; i++) { 517 522 memsetb((__address)&cache->mag_cache[i], 518 523 sizeof(cache->mag_cache[i]), 0); … … 650 655 ipl_t ipl; 651 656 void *result = NULL; 652 657 653 658 /* Disable interrupts to avoid deadlocks with interrupt handlers */ 654 659 ipl = interrupts_disable();
Note:
See TracChangeset
for help on using the changeset viewer.