summaryrefslogtreecommitdiffstats
path: root/lib/libgssapi/gss_verify.c
diff options
context:
space:
mode:
authorroyger <royger@FreeBSD.org>2014-08-05 10:29:01 +0000
committerroyger <royger@FreeBSD.org>2014-08-05 10:29:01 +0000
commitb86acea372543107bfcfb54ced21df5c7326724e (patch)
treead3ccd83d22cd1f596df6aaa1ffdc9c8f27ac5e0 /lib/libgssapi/gss_verify.c
parenta519d2b31aa4dff293e05ed116b1ce8b620e500f (diff)
downloadFreeBSD-src-b86acea372543107bfcfb54ced21df5c7326724e.zip
FreeBSD-src-b86acea372543107bfcfb54ced21df5c7326724e.tar.gz
vm_phys: improve robustness of fictitious ranges
With the current implementation of managed fictitious ranges when also using VM_PHYSSEG_DENSE, a user could try to register a fictitious range that starts inside of vm_page_array, but then overrruns it (because the end of the fictitious range is greater than vm_page_array_size + first_page). This would result in PHYS_TO_VM_PAGE returning unallocated pages from past the end of vm_page_array. The same could happen if a user tried to register a segment that starts outside of vm_page_array but ends inside of it. In order to fix this, allow vm_phys_fictitious_{reg/unreg}_range to use a set of pages from vm_page_array, and allocate the rest. Sponsored by: Citrix Systems R&D Reviewed by: kib, alc vm/vm_phys.c: - Allow registering/unregistering fictitious ranges that overrun vm_page_array.
Diffstat (limited to 'lib/libgssapi/gss_verify.c')
0 files changed, 0 insertions, 0 deletions
OpenPOWER on IntegriCloud