History log of /src/sys/kern/subr_module.c (Results 1 – 25 of 118)
Revision Date Author Comments
# 91241819 05-Feb-2026 Quentin Thébault <quentin.thebault@defenso.fr>

sys/subr_module: remove useless macro gates

These constants are always defined by sys/sys/linker.h.

Reviewed by: vexeduxr
Signed-off-by: Quentin Thébault <quentin.thebault@defenso.fr>
Sponsored by:

sys/subr_module: remove useless macro gates

These constants are always defined by sys/sys/linker.h.

Reviewed by: vexeduxr
Signed-off-by: Quentin Thébault <quentin.thebault@defenso.fr>
Sponsored by: Defenso
MFC after: 2 weeks
Closes: https://github.com/freebsd/freebsd-src/pull/2004

show more ...


# 04a812ae 03-Mar-2025 Mitchell Horne <mhorne@FreeBSD.org>

riscv/stand: pass boot hart in loader metadata

Use the RISCV_EFI_BOOT_PROTOCOL to fetch the boot hart ID, and
communicate this to the kernel via new metadata field
(MODINFOMD_BOOT_HART).

If the boo

riscv/stand: pass boot hart in loader metadata

Use the RISCV_EFI_BOOT_PROTOCOL to fetch the boot hart ID, and
communicate this to the kernel via new metadata field
(MODINFOMD_BOOT_HART).

If the boot hart is not found this way, fall back to the (now
deprecated) device-tree method.

The assumption that a hart ID can be represented with a 32-bit unsigned
integer is unchanged in the kernel, but from the loader we pass the full
64-bit value. This ensures that this API won't need to change in the
future, should the wider value become necessary.

Sponsored by: The FreeBSD Foundation
Differential Revision: https://reviews.freebsd.org/D48887

show more ...


# 4d213c59 24-Aug-2024 Ahmad Khalifa <ahmadkhalifa570@gmail.com>

sys: use globals for the ELF kernel and module type strings

Initialize the globals with macros so we can use the same values in the
loader.

Also remove unnecessary "elfN module" checks.

Reviewed b

sys: use globals for the ELF kernel and module type strings

Initialize the globals with macros so we can use the same values in the
loader.

Also remove unnecessary "elfN module" checks.

Reviewed by: imp, kib
Pull Request: https://github.com/freebsd/freebsd-src/pull/1394

show more ...


# b72ae900 22-Aug-2024 Ahmad Khalifa <ahmadkhalifa570@gmail.com>

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

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

show more ...


# 966e53a4 09-Jul-2024 Emmanuel Vadot <manu@FreeBSD.org>

linker: Add MODINFOMD_SPLASH type

This mod type and structure holds the splash screen data and metadata.

Differential Revision: https://reviews.freebsd.org/D45930
Reviewed by: tsoome
Sponsored by:

linker: Add MODINFOMD_SPLASH type

This mod type and structure holds the splash screen data and metadata.

Differential Revision: https://reviews.freebsd.org/D45930
Reviewed by: tsoome
Sponsored by: Beckhoff Automation GmbH & Co. KG

show more ...


# fdafd315 24-Nov-2023 Warner Losh <imp@FreeBSD.org>

sys: Automated cleanup of cdefs and other formatting

Apply the following automated changes to try to eliminate
no-longer-needed sys/cdefs.h includes as well as now-empty
blank lines in a row.

Remov

sys: Automated cleanup of cdefs and other formatting

Apply the following automated changes to try to eliminate
no-longer-needed sys/cdefs.h includes as well as now-empty
blank lines in a row.

Remove /^#if.*\n#endif.*\n#include\s+<sys/cdefs.h>.*\n/
Remove /\n+#include\s+<sys/cdefs.h>.*\n+#if.*\n#endif.*\n+/
Remove /\n+#if.*\n#endif.*\n+/
Remove /^#if.*\n#endif.*\n/
Remove /\n+#include\s+<sys/cdefs.h>\n#include\s+<sys/types.h>/
Remove /\n+#include\s+<sys/cdefs.h>\n#include\s+<sys/param.h>/
Remove /\n+#include\s+<sys/cdefs.h>\n#include\s+<sys/capsicum.h>/

Sponsored by: Netflix

show more ...


# 685dc743 16-Aug-2023 Warner Losh <imp@FreeBSD.org>

sys: Remove $FreeBSD$: one-line .c pattern

Remove /^[\s*]*__FBSDID\("\$FreeBSD\$"\);?\s*\n/


# 4d846d26 10-May-2023 Warner Losh <imp@FreeBSD.org>

spdx: The BSD-2-Clause-FreeBSD identifier is obsolete, drop -FreeBSD

The SPDX folks have obsoleted the BSD-2-Clause-FreeBSD identifier. Catch
up to that fact and revert to their recommended match of

spdx: The BSD-2-Clause-FreeBSD identifier is obsolete, drop -FreeBSD

The SPDX folks have obsoleted the BSD-2-Clause-FreeBSD identifier. Catch
up to that fact and revert to their recommended match of BSD-2-Clause.

Discussed with: pfg
MFC After: 3 days
Sponsored by: Netflix

show more ...


# 742653eb 07-Jan-2021 Toomas Soome <tsoome@FreeBSD.org>

sysctl debug.dump_modinfo should recognize font module

Add MODINFOMD_FONT to dump list.


# 93b18e37 30-Nov-2020 Toomas Soome <tsoome@FreeBSD.org>

vt: if loader did pass the font via metadata, use it

The built in 8x16 font may be way too small with large framebuffer
resolutions, to improve readability, use loader provied font.


# a4a10b37 30-Nov-2020 Toomas Soome <tsoome@FreeBSD.org>

Add VT driver for VBE framebuffer device

Implement vt_vbefb to support Vesa Bios Extensions (VBE) framebuffer with VT.
vt_vbefb is built based on vt_efifb and is assuming similar data for
initializa

Add VT driver for VBE framebuffer device

Implement vt_vbefb to support Vesa Bios Extensions (VBE) framebuffer with VT.
vt_vbefb is built based on vt_efifb and is assuming similar data for
initialization, use MODINFOMD_VBE_FB to identify the structure vbe_fb
in kernel metadata.

struct vbe_fb, is populated by boot loader, and is passed to kernel via
metadata payload.

Differential Revision: https://reviews.freebsd.org/D27373

show more ...


# 841dad02 08-Oct-2020 Mitchell Horne <mhorne@FreeBSD.org>

Fix a loop condition

The correct way to identify the end of the metadata is two adjacent
entries set to zero/MODINFO_END. I made a typo and this was checking the
first entry twice.

Reported by: rpo

Fix a loop condition

The correct way to identify the end of the metadata is two adjacent
entries set to zero/MODINFO_END. I made a typo and this was checking the
first entry twice.

Reported by: rpokala
Sponsored by: NetApp, Inc.
Sponsored by: Klara, Inc.

show more ...


# 22e6a670 08-Oct-2020 Mitchell Horne <mhorne@FreeBSD.org>

Add a routine to dump boot metadata

The boot metadata (also referred to as modinfo, or preload metadata)
provides information about the size and location of the kernel,
pre-loaded modules, and other

Add a routine to dump boot metadata

The boot metadata (also referred to as modinfo, or preload metadata)
provides information about the size and location of the kernel,
pre-loaded modules, and other metadata (e.g. the EFI framebuffer) to be
consumed during by the kernel during early boot. It is encoded as a
series of type-length-value entries and is usually constructed by
loader(8) and passed to the kernel. It is also faked on some
architectures when booted by other means.

Although much of the module information is available via kldstat(8),
there is no easy way to debug the metadata in its entirety. Add some
routines to parse this data and allow it to be printed to the console
during early boot or output via a sysctl.

Since the output can be lengthly, printing to the console is gated
behind the debug.dump_modinfo_at_boot kenv variable as well as the
BOOTVERBOSE flag. The sysctl to print the metadata is named
debug.dump_modinfo.

Reviewed by: tsoome
Sponsored by: NetApp, Inc.
Sponsored by: Klara, Inc.
Differential Revision: https://reviews.freebsd.org/D26687

show more ...


# 6fed89b1 01-Sep-2020 Mateusz Guzik <mjg@FreeBSD.org>

kern: clean up empty lines in .c and .h files


# 04a812ae 03-Mar-2025 Mitchell Horne <mhorne@FreeBSD.org>

riscv/stand: pass boot hart in loader metadata

Use the RISCV_EFI_BOOT_PROTOCOL to fetch the boot hart ID, and
communicate this to the kernel via new metadata field
(MODINFOMD_BOOT_HART).

If the boo

riscv/stand: pass boot hart in loader metadata

Use the RISCV_EFI_BOOT_PROTOCOL to fetch the boot hart ID, and
communicate this to the kernel via new metadata field
(MODINFOMD_BOOT_HART).

If the boot hart is not found this way, fall back to the (now
deprecated) device-tree method.

The assumption that a hart ID can be represented with a 32-bit unsigned
integer is unchanged in the kernel, but from the loader we pass the full
64-bit value. This ensures that this API won't need to change in the
future, should the wider value become necessary.

Sponsored by: The FreeBSD Foundation
Differential Revision: https://reviews.freebsd.org/D48887

show more ...


# 4d213c59 24-Aug-2024 Ahmad Khalifa <ahmadkhalifa570@gmail.com>

sys: use globals for the ELF kernel and module type strings

Initialize the globals with macros so we can use the same values in the
loader.

Also remove unnecessary "elfN module" checks.

Reviewed b

sys: use globals for the ELF kernel and module type strings

Initialize the globals with macros so we can use the same values in the
loader.

Also remove unnecessary "elfN module" checks.

Reviewed by: imp, kib
Pull Request: https://github.com/freebsd/freebsd-src/pull/1394

show more ...


# b72ae900 22-Aug-2024 Ahmad Khalifa <ahmadkhalifa570@gmail.com>

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

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

show more ...


# 966e53a4 09-Jul-2024 Emmanuel Vadot <manu@FreeBSD.org>

linker: Add MODINFOMD_SPLASH type

This mod type and structure holds the splash screen data and metadata.

Differential Revision: https://reviews.freebsd.org/D45930
Reviewed by: tsoome
Sponsored by:

linker: Add MODINFOMD_SPLASH type

This mod type and structure holds the splash screen data and metadata.

Differential Revision: https://reviews.freebsd.org/D45930
Reviewed by: tsoome
Sponsored by: Beckhoff Automation GmbH & Co. KG

show more ...


# fdafd315 24-Nov-2023 Warner Losh <imp@FreeBSD.org>

sys: Automated cleanup of cdefs and other formatting

Apply the following automated changes to try to eliminate
no-longer-needed sys/cdefs.h includes as well as now-empty
blank lines in a row.

Remov

sys: Automated cleanup of cdefs and other formatting

Apply the following automated changes to try to eliminate
no-longer-needed sys/cdefs.h includes as well as now-empty
blank lines in a row.

Remove /^#if.*\n#endif.*\n#include\s+<sys/cdefs.h>.*\n/
Remove /\n+#include\s+<sys/cdefs.h>.*\n+#if.*\n#endif.*\n+/
Remove /\n+#if.*\n#endif.*\n+/
Remove /^#if.*\n#endif.*\n/
Remove /\n+#include\s+<sys/cdefs.h>\n#include\s+<sys/types.h>/
Remove /\n+#include\s+<sys/cdefs.h>\n#include\s+<sys/param.h>/
Remove /\n+#include\s+<sys/cdefs.h>\n#include\s+<sys/capsicum.h>/

Sponsored by: Netflix

show more ...


# 685dc743 16-Aug-2023 Warner Losh <imp@FreeBSD.org>

sys: Remove $FreeBSD$: one-line .c pattern

Remove /^[\s*]*__FBSDID\("\$FreeBSD\$"\);?\s*\n/


# 4d846d26 10-May-2023 Warner Losh <imp@FreeBSD.org>

spdx: The BSD-2-Clause-FreeBSD identifier is obsolete, drop -FreeBSD

The SPDX folks have obsoleted the BSD-2-Clause-FreeBSD identifier. Catch
up to that fact and revert to their recommended match of

spdx: The BSD-2-Clause-FreeBSD identifier is obsolete, drop -FreeBSD

The SPDX folks have obsoleted the BSD-2-Clause-FreeBSD identifier. Catch
up to that fact and revert to their recommended match of BSD-2-Clause.

Discussed with: pfg
MFC After: 3 days
Sponsored by: Netflix

show more ...


# 742653eb 07-Jan-2021 Toomas Soome <tsoome@FreeBSD.org>

sysctl debug.dump_modinfo should recognize font module

Add MODINFOMD_FONT to dump list.


# 93b18e37 30-Nov-2020 Toomas Soome <tsoome@FreeBSD.org>

vt: if loader did pass the font via metadata, use it

The built in 8x16 font may be way too small with large framebuffer
resolutions, to improve readability, use loader provied font.


# a4a10b37 30-Nov-2020 Toomas Soome <tsoome@FreeBSD.org>

Add VT driver for VBE framebuffer device

Implement vt_vbefb to support Vesa Bios Extensions (VBE) framebuffer with VT.
vt_vbefb is built based on vt_efifb and is assuming similar data for
initializa

Add VT driver for VBE framebuffer device

Implement vt_vbefb to support Vesa Bios Extensions (VBE) framebuffer with VT.
vt_vbefb is built based on vt_efifb and is assuming similar data for
initialization, use MODINFOMD_VBE_FB to identify the structure vbe_fb
in kernel metadata.

struct vbe_fb, is populated by boot loader, and is passed to kernel via
metadata payload.

Differential Revision: https://reviews.freebsd.org/D27373

show more ...


# 841dad02 08-Oct-2020 Mitchell Horne <mhorne@FreeBSD.org>

Fix a loop condition

The correct way to identify the end of the metadata is two adjacent
entries set to zero/MODINFO_END. I made a typo and this was checking the
first entry twice.

Reported by: rpo

Fix a loop condition

The correct way to identify the end of the metadata is two adjacent
entries set to zero/MODINFO_END. I made a typo and this was checking the
first entry twice.

Reported by: rpokala
Sponsored by: NetApp, Inc.
Sponsored by: Klara, Inc.

show more ...


12345