]> CyberLeo.Net >> Repos - FreeBSD/FreeBSD.git/commit
vm_fault: Shoot down shared mappings in vm_fault_copy_entry()
authorMark Johnston <markj@FreeBSD.org>
Mon, 25 Jul 2022 20:53:21 +0000 (16:53 -0400)
committerMark Johnston <markj@FreeBSD.org>
Tue, 9 Aug 2022 19:59:49 +0000 (15:59 -0400)
commitdd349089ff92643f084fdef2cd8bb07659c82aaf
tree2c25145f8fc7ffdfdce5fdf4bebc0dbcc30f0891
parent056ffc74a7693808c843e15d85deee20abf5c4e2
vm_fault: Shoot down shared mappings in vm_fault_copy_entry()

As in vm_fault_cow(), it's possible, albeit rare, for multiple vm_maps
to share a shadow object.  When copying a page from a backing object
into the shadow, all mappings of the source page must therefore be
removed.  Otherwise, future operations on the object tree may detect
that the source page is fully shadowed and thus can be freed.

Approved by: so
Security: FreeBSD-SA-22:11.vm
Reviewed by: alc, kib
Sponsored by: The FreeBSD Foundation
Differential Revision: https://reviews.freebsd.org/D35635

(cherry picked from commit 5c50e900ad779fccbf0a230bfb6a68a3e93ccf60)
(cherry picked from commit 3ea8c7ad90f75129c52a2b64213c5578af23dc8d)
sys/vm/vm_fault.c