opnsense-src/sys/x86/include
Ahmad Khalifa b72ae900d4 sys: make the kernel metadata pointer global
The way we got the kernel metadata pointer was by calling
preload_search_by_type with one of the following three: "elf kernel",
"elf32 kernel" and "elf64 kernel". Which one(s) we used wasn't
consistent though. Sometimes we would only try "elf kernel", and other
times we would try one of the latter two if the first failed. However,
the loader only ever sets "elf kernel" as the kernel type.

Now, the kmdp is a global, preload_kmdp, and it's initialized using
preload_initkmdp in machdep.c (or machdep_boot.c on arm/64).
preload_initkmdp takes a single boolean argument that tells us whether
not finding the kmdp is fatal or not.

Reviewed by: imp, kib
Pull Request: https://github.com/freebsd/freebsd-src/pull/1394
2025-01-24 14:25:51 -07:00
..
xen intr/x86: replace use of vector in interface with intsrc 2024-05-09 17:15:07 -06:00
_align.h sys: Remove ancient SCCS tags. 2023-11-26 22:23:30 -07:00
_inttypes.h sys: Remove $FreeBSD$: one-line .h pattern 2023-08-16 11:54:18 -06:00
_limits.h sys: Remove ancient SCCS tags. 2023-11-26 22:23:30 -07:00
_stdint.h sys: Remove $FreeBSD$: two-line .h pattern 2023-08-16 11:54:11 -06:00
_types.h sys: Remove ancient SCCS tags. 2023-11-26 22:23:30 -07:00
acpica_machdep.h xen/pvh: fix initialization of environment 2024-08-02 12:41:52 +02:00
apicreg.h sys: Remove $FreeBSD$: two-line .h pattern 2023-08-16 11:54:11 -06:00
apicvar.h x86: Allow sharing of perfomance counter interrupts 2024-12-15 16:39:36 +01:00
apm_bios.h sys: Remove $FreeBSD$: two-line .h pattern 2023-08-16 11:54:11 -06:00
bus.h sys: Remove $FreeBSD$: two-line .h pattern 2023-08-16 11:54:11 -06:00
bus_dma.h Deprecate contigfree(9) in favour of free(9) 2024-07-26 10:45:01 +00:00
busdma_impl.h busdma: tidy bus_dma_run_filter() functions 2023-12-06 19:11:39 -04:00
clock.h sys: Remove $FreeBSD$: two-line .h pattern 2023-08-16 11:54:11 -06:00
cputypes.h sys: Remove $FreeBSD$: two-line .h pattern 2023-08-16 11:54:11 -06:00
dump.h sys: Remove $FreeBSD$: two-line .h pattern 2023-08-16 11:54:11 -06:00
elf.h sys: Remove $FreeBSD$: two-line .h pattern 2023-08-16 11:54:11 -06:00
endian.h sys: Remove ancient SCCS tags. 2023-11-26 22:23:30 -07:00
fdt.h sys: Remove $FreeBSD$: two-line .h pattern 2023-08-16 11:54:11 -06:00
float.h sys: Remove ancient SCCS tags. 2023-11-26 22:23:30 -07:00
fpu.h amd64/fpu: Track supervisor state XSAVE components 2025-01-22 13:58:34 +01:00
frame.h sys: Remove ancient SCCS tags. 2023-11-26 22:23:30 -07:00
ifunc.h sys: Remove $FreeBSD$: two-line .h pattern 2023-08-16 11:54:11 -06:00
init.h sys: make the kernel metadata pointer global 2025-01-24 14:25:51 -07:00
intr_machdep.h x86: remove LOCORE: No longer needed 2024-12-05 19:07:45 -07:00
iommu.h x86/iommu: extract useful utilities into x86_iommu.c 2024-05-25 08:32:01 +03:00
kvm.h sys: Remove $FreeBSD$: two-line .h pattern 2023-08-16 11:54:11 -06:00
legacyvar.h new-bus: Remove the 'rid' and 'type' arguments from BUS_RELEASE_RESOURCE 2024-03-13 15:05:54 -07:00
mca.h Revert "mca: Allow for passing ECC error record to memory controller driver" 2024-09-18 10:44:37 -04:00
metadata.h Add a new sysctl in order to diffrentiate UEFI architectures 2024-09-20 08:45:09 -06:00
mptable.h Retire non-NEW_PCIB code and remove config option 2024-07-18 18:55:12 +01:00
ofw_machdep.h sys: Remove $FreeBSD$: two-line .h pattern 2023-08-16 11:54:11 -06:00
pci_cfgreg.h x86: Support multiple PCI MCFG regions 2023-11-29 10:32:39 -08:00
ppireg.h sys: Remove $FreeBSD$: two-line .h pattern 2023-08-16 11:54:11 -06:00
procctl.h sys: Remove $FreeBSD$: two-line .h pattern 2023-08-16 11:54:11 -06:00
psl.h sys: Remove ancient SCCS tags. 2023-11-26 22:23:30 -07:00
ptrace.h sys: Remove ancient SCCS tags. 2023-11-26 22:23:30 -07:00
pvclock.h sys: Remove $FreeBSD$: two-line .h pattern 2023-08-16 11:54:11 -06:00
reg.h sys: Remove ancient SCCS tags. 2023-11-26 22:23:30 -07:00
segments.h sys: Remove ancient SCCS tags. 2023-11-26 22:23:30 -07:00
setjmp.h sys: Remove $FreeBSD$: two-line .h pattern 2023-08-16 11:54:11 -06:00
sigframe.h sys: Remove $FreeBSD$: two-line .h pattern 2023-08-16 11:54:11 -06:00
signal.h sys: Remove ancient SCCS tags. 2023-11-26 22:23:30 -07:00
specialreg.h x86: Add definitions for some Intel Processor Trace bits 2024-12-15 16:39:36 +01:00
stack.h sys: Remove $FreeBSD$: two-line .h pattern 2023-08-16 11:54:11 -06:00
stdarg.h sys: Remove $FreeBSD$: two-line .h pattern 2023-08-16 11:54:11 -06:00
sysarch.h sys: Remove $FreeBSD$: two-line .h pattern 2023-08-16 11:54:11 -06:00
timerreg.h sys: Remove $FreeBSD$: two-line .h pattern 2023-08-16 11:54:11 -06:00
tls.h spdx: The BSD-2-Clause-FreeBSD identifier is obsolete, drop -FreeBSD 2023-05-12 10:44:03 -06:00
trap.h sys: Remove ancient SCCS tags. 2023-11-26 22:23:30 -07:00
ucode.h x86/ucode: add support for early loading of CPU ucode on AMD. 2024-02-22 10:04:31 -08:00
ucontext.h sys: Remove $FreeBSD$: two-line .h pattern 2023-08-16 11:54:11 -06:00
vdso.h sys: Remove $FreeBSD$: two-line .h pattern 2023-08-16 11:54:11 -06:00
vmware.h guestrpc module to handle VMware backdoor port GuestRPC functionality 2024-05-01 15:45:45 -04:00
vmware_guestrpc.h guestrpc module to handle VMware backdoor port GuestRPC functionality 2024-05-01 15:45:45 -04:00
x86_ieeefp.h sys: Remove ancient SCCS tags. 2023-11-26 22:23:30 -07:00
x86_smp.h sys: Remove $FreeBSD$: two-line .h pattern 2023-08-16 11:54:11 -06:00
x86_var.h x86: Refactor kernel-mode NMI handling 2024-12-15 16:39:36 +01:00