aboutsummaryrefslogtreecommitdiff
path: root/vm/vm_object.h
diff options
context:
space:
mode:
authorSergey Bugaev <bugaevc@gmail.com>2023-06-26 14:26:54 +0300
committerSamuel Thibault <samuel.thibault@ens-lyon.org>2023-07-03 02:20:30 +0200
commitcab23fb54d10843158e874d87dd3725ddbb2b4db (patch)
tree7a3c118c58dba82b088baf52beab4f093e9f1e12 /vm/vm_object.h
parentd57189313d359bfa4033d24b3c4248b539826763 (diff)
downloadgnumach-cab23fb54d10843158e874d87dd3725ddbb2b4db.tar.gz
gnumach-cab23fb54d10843158e874d87dd3725ddbb2b4db.tar.bz2
gnumach-cab23fb54d10843158e874d87dd3725ddbb2b4db.zip
vm: Eagerly release deallocated pages
If a deallocated VM map entry refers to an object that only has a single reference and doesn't have a pager port, we can eagerly release any physical pages that were contained in the deallocated range. This is not a 100% solution: it is still possible to "leak" physical pages that can never appear in virtual memory again by creating several references to a memory object (perhaps by forking a VM map with VM_INHERIT_SHARE) and deallocating the pages from all the maps referring to the object. That being said, it should help to release the pages in the common case sooner. Message-Id: <20230626112656.435622-6-bugaevc@gmail.com>
Diffstat (limited to 'vm/vm_object.h')
0 files changed, 0 insertions, 0 deletions