opnsense-src/sys/arm64
Alan Cox 3e7e2bb246 arm64 pmap: Make VM_PAGE_TO_PV_LIST_LOCK() a constant-time operation
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
2023-05-29 11:22:55 -05:00
..
acpica spdx: The BSD-2-Clause-FreeBSD identifier is obsolete, drop -FreeBSD 2023-05-12 10:44:03 -06:00
arm64 arm64 pmap: Make VM_PAGE_TO_PV_LIST_LOCK() a constant-time operation 2023-05-29 11:22:55 -05:00
broadcom Mechanically convert genet(4) to IfAPI 2023-01-31 16:26:34 -05:00
cavium arm64: fix the LINT-ACPI build 2023-03-07 11:37:31 -06:00
conf Add vt_simplefb to the arm64 NOTES file 2023-04-26 14:11:36 +01:00
coresight arm64: coresight: fix the build without FDT 2022-09-29 14:33:33 -05:00
freescale/imx spdx: The BSD-2-Clause-FreeBSD identifier is obsolete, drop -FreeBSD 2023-05-12 10:44:03 -06:00
include smp: Dynamically allocate the stoppcbs array 2023-05-25 18:09:55 -04:00
intel arm64 intel: Remove unused devclass arguments to DRIVER_MODULE. 2022-05-09 14:26:45 -07:00
iommu arm64: Fix a typo in a source code comment 2023-05-12 10:45:46 +02:00
linux linux(4): Regen for linux_execve 2023-05-29 12:18:30 +03:00
nvidia/tegra210 spdx: The BSD-2-Clause-FreeBSD identifier is obsolete, drop -FreeBSD 2023-05-12 10:44:03 -06:00
qoriq spdx: The BSD-2-Clause-FreeBSD identifier is obsolete, drop -FreeBSD 2023-05-12 10:44:03 -06:00
qualcomm arm/arm64 qualcomm: Remove unused devclass arguments to DRIVER_MODULE. 2022-05-09 14:26:45 -07:00
rockchip spdx: The BSD-2-Clause-FreeBSD identifier is obsolete, drop -FreeBSD 2023-05-12 10:44:03 -06:00