kernel/vm: Free pages via vm_page_free only, not vm_page_set_state.
All consumers of this API should be adjusted here. This partially paves the way for use of committed pages for page tables. Change-Id: Id6fc2edc86fbd80e929c413e23cf8de1509a8215 Reviewed-on: https://review.haiku-os.org/c/haiku/+/8723 Reviewed-by: X512 X512 <[email protected]> Reviewed-by: waddlesplash <[email protected]> Tested-by: Commit checker robot <[email protected]>
This commit is contained in:
committed by
waddlesplash
parent
bd0f4983c8
commit
b1a913c3aa
+3
-3
@@ -223,7 +223,7 @@ PrecacheIO::IOFinished(status_t status, bool partialTransfer,
|
||||
DEBUG_PAGE_ACCESS_TRANSFER(fPages[i], fAllocatingThread);
|
||||
fCache->NotifyPageEvents(fPages[i], PAGE_EVENT_NOT_BUSY);
|
||||
fCache->RemovePage(fPages[i]);
|
||||
vm_page_set_state(fPages[i], PAGE_STATE_FREE);
|
||||
vm_page_free(fCache, fPages[i]);
|
||||
}
|
||||
|
||||
delete this;
|
||||
@@ -319,7 +319,7 @@ reserve_pages(file_cache_ref* ref, vm_page_reservation* reservation,
|
||||
ASSERT(!page->IsMapped());
|
||||
ASSERT(!page->modified);
|
||||
cache->RemovePage(page);
|
||||
vm_page_set_state(page, PAGE_STATE_FREE);
|
||||
vm_page_free(cache, page);
|
||||
left--;
|
||||
}
|
||||
}
|
||||
@@ -421,7 +421,7 @@ read_into_cache(file_cache_ref* ref, void* cookie, off_t offset,
|
||||
for (int32 i = 0; i < pageIndex; i++) {
|
||||
cache->NotifyPageEvents(pages[i], PAGE_EVENT_NOT_BUSY);
|
||||
cache->RemovePage(pages[i]);
|
||||
vm_page_set_state(pages[i], PAGE_STATE_FREE);
|
||||
vm_page_free(cache, pages[i]);
|
||||
}
|
||||
|
||||
return status;
|
||||
|
||||
Reference in New Issue
Block a user