mirror of
https://github.com/opnsense/src.git
synced 2026-04-21 06:07:31 -04:00
The prior implementation of VM_PAGE_TO_PV_LIST_LOCK() performed a linear-time search of the vm_phys_segs[] array. However, in contrast to PHYS_TO_PV_LIST_LOCK(), that search is unnecessary because every (non- fictitious) vm_page contains the index of the vm_phys_seg in which it resides. Change most of the remaining uses of CHANGE_PV_LIST_LOCK_TO_PHYS() and PHYS_TO_PV_LIST_LOCK() to CHANGE_PV_LIST_LOCK_TO_VM_PAGE() and VM_PAGE_TO_PV_LIST_LOCK(), respectively. Collectively, these changes also reduce the size of a GENERIC-NODEBUG kernel's pmap. Before: text data bss dec hex filename 70144 3200 2248 75592 0x12748 pmap.o After: text data bss dec hex filename 69192 3200 2248 74640 0x12390 pmap.o Reviewed by: kib, markj Differential Revision: https://reviews.freebsd.org/D40306 |
||
|---|---|---|
| .. | ||
| acpica | ||
| arm64 | ||
| broadcom | ||
| cavium | ||
| conf | ||
| coresight | ||
| freescale/imx | ||
| include | ||
| intel | ||
| iommu | ||
| linux | ||
| nvidia/tegra210 | ||
| qoriq | ||
| qualcomm | ||
| rockchip | ||