summaryrefslogtreecommitdiffstats
path: root/bin
diff options
context:
space:
mode:
authorkib <kib@FreeBSD.org>2014-05-10 17:03:33 +0000
committerkib <kib@FreeBSD.org>2014-05-10 17:03:33 +0000
commit7798d7f7f405786a5591626ffc1c59f60134d434 (patch)
tree6cf8b7c8737b89e6740bb4a8b78894493648e030 /bin
parent8c7a262b995375a1519291d5e2ec0eeecc984434 (diff)
downloadFreeBSD-src-7798d7f7f405786a5591626ffc1c59f60134d434.zip
FreeBSD-src-7798d7f7f405786a5591626ffc1c59f60134d434.tar.gz
For the upgrade case in vm_fault_copy_entry(), when the entry does not
need COW and is writeable (i.e. becoming writeable due to the mprotect(2) operation), do not create a new backing object for the entry. The caller of the function is vm_map_protect(), the call is made to ensure that wired entry has all pages resident and wired in the top level object and to enable the write. We might need to copy read-only page from some backing objects into the top object or remap the page with the write allowed. This fixes the issue with mishandling of the swap accounting when read-only wired mapping is upgraded to write-enabled after fork. The previous code path did not accounted the new object, but it creation is redundand anyway and the change provides an optimization for the non-common situation. Reported by: markj Suggested and reviewed by: alc (previous version) Tested by: pho Sponsored by: The FreeBSD Foundation MFC after: 1 week
Diffstat (limited to 'bin')
0 files changed, 0 insertions, 0 deletions
OpenPOWER on IntegriCloud