Lines Matching defs:VMCache
75 struct VMCache : public DoublyLinkedListLinkImpl<VMCache> {
77 typedef DoublyLinkedList<VMCache> ConsumerList;
80 VMCache();
81 virtual ~VMCache();
115 void MoveAllPages(VMCache* fromCache);
123 void AddConsumer(VMCache* consumer);
127 void TransferAreas(VMCache* fromCache);
135 virtual status_t Adopt(VMCache* source, off_t offset, off_t size,
175 virtual void Merge(VMCache* source);
194 VMCache* source;
204 VMCache* debug_previous;
205 VMCache* debug_next;
218 void _RemoveConsumer(VMCache* consumer);
234 extern VMCache* gDebugCacheList;
240 static status_t CreateAnonymousCache(VMCache*& cache,
244 static status_t CreateVnodeCache(VMCache*& cache,
246 static status_t CreateDeviceCache(VMCache*& cache,
248 static status_t CreateNullCache(int priority, VMCache*& cache);
254 VMCache::Lock()
261 VMCache::TryLock()
268 VMCache::SwitchLock(mutex* from)
275 VMCache::SwitchFromReadLock(rw_lock* from)
282 VMCache::AssertLocked()
289 VMCache::AcquireRefLocked()
298 VMCache::AcquireRef()
307 VMCache::ReleaseRefLocked()
316 VMCache::ReleaseRef()
325 VMCache::ReleaseRefAndUnlock(bool consumerLocked)
333 VMCache::MarkPageUnbusy(vm_page* page)
342 VMCache::WiredPagesCount() const
349 VMCache::IncrementWiredPagesCount()
358 VMCache::DecrementWiredPagesCount()
366 // vm_page methods implemented here to avoid VMCache.h inclusion in vm_types.h
392 struct VMCache *vm_cache_acquire_locked_page_cache(struct vm_page *page,