Lines Matching refs:cache

74 // number of free swap blocks the object cache shall minimally have
101 VMAnonymousCache *cache;
102 off_t page_index; // page index in the cache
106 // SWAP_BLOCK_PAGES continuous pages from the same cache
123 VMAnonymousCache* cache = key.cache;
124 return blockIndex ^ (size_t)(int*)cache;
136 && key.cache == value->key.cache;
167 SwapTraceEntry(VMAnonymousCache* cache)
169 fCache(cache)
180 ReadPage(VMAnonymousCache* cache, page_num_t pageIndex,
183 SwapTraceEntry(cache),
192 out.Print("swap read: cache %p, page index: %lu <- swap slot: %lu",
204 WritePage(VMAnonymousCache* cache, page_num_t pageIndex,
207 SwapTraceEntry(cache),
216 out.Print("swap write: cache %p, page index: %lu -> swap slot: %lu",
402 WriteCallback(VMAnonymousCache* cache, AsyncIOCallback* callback)
405 fCache(cache)
552 // not an option as 1. unlocking the cache means that new
554 // cleared (since the cache still has the old size) and 2.
555 // we'd risk a deadlock in case we come from the file cache
617 /*! Moves the swap pages for the given range from the source cache into this
618 cache. Both caches must be locked.
626 panic("VMAnonymousCache::Adopt(): adopt from incompatible cache %p "
667 swapBlock->key.cache = this;
1017 panic("VMAnonymousCache::Merge(): merge with incompatible cache "
1032 // Move all not shadowed swap pages from the source to the consumer cache.
1036 // Move all not shadowed pages from the source to the consumer cache.
1077 swap->key.cache = this;
1210 // The source cache has less pages than the consumer (this cache), so we
1221 // the page is not yet in the consumer cache - move it upwards
1232 // The consumer (this cache) has less pages than the source, so we move the
1284 key.cache = this;
1326 // to the consumer. At any rate, the source cache doesn't own it
1342 // no swap block in the consumer cache. Just take over the source
1344 sourceSwapBlock->key.cache = this;
1350 // already a swap block in the consumer cache. Copy the respective
1546 // create swap block cache
1550 panic("swap_init(): can't create object cache for swap blocks\n");
1768 VMAnonymousCache* cache = dynamic_cast<VMAnonymousCache*>(page->Cache());
1769 if (cache == NULL)
1772 swap_addr_t slotIndex = cache->_SwapBlockGetAddress(page->cache_offset);
1777 cache->fAllocatedSwapSize -= B_PAGE_SIZE;
1778 cache->_SwapBlockFree(page->cache_offset, 1);