Date: Tue, 25 Nov 2025 17:14:28 +0000 From: Ed Maste <emaste@FreeBSD.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-main@FreeBSD.org Subject: git: fad4c92b78a1 - main - Revert "kernel linker: Disable local sym resolution by default" Message-ID: <6925e3f4.8ba9.54553559@gitrepo.freebsd.org>
next in thread | raw e-mail | index | archive | help
The branch main has been updated by emaste: URL: https://cgit.FreeBSD.org/src/commit/?id=fad4c92b78a123f87195173ac118655fa8e325cd commit fad4c92b78a123f87195173ac118655fa8e325cd Author: Ed Maste <emaste@FreeBSD.org> AuthorDate: 2025-11-25 17:12:36 +0000 Commit: Ed Maste <emaste@FreeBSD.org> CommitDate: 2025-11-25 17:14:10 +0000 Revert "kernel linker: Disable local sym resolution by default" I've received a report of a failure from resolving kern_kmq_open. Revert for now as we are currently in stabweek. This reverts commit 9562994a7aacee2baae6ddee1a7b558b48ae39ef. Reported by: mav --- UPDATING | 9 --------- sys/kern/link_elf.c | 2 +- sys/kern/link_elf_obj.c | 2 +- 3 files changed, 2 insertions(+), 11 deletions(-) diff --git a/UPDATING b/UPDATING index 7f0cb44181d3..aaef0e5b4cd3 100644 --- a/UPDATING +++ b/UPDATING @@ -27,15 +27,6 @@ NOTE TO PEOPLE WHO THINK THAT FreeBSD 16.x IS SLOW: world, or to merely disable the most expensive debugging functionality at runtime, run "ln -s 'abort:false,junk:false' /etc/malloc.conf".) -20251125: - The `debug.link_elf_leak_locals` and `debug.link_elf_obj_leak_locals` - sysctls now default to 0, so the kernel module linker no longer - performs symbol resolution against local symbols from other modules. - - If a kernel module now fails to load because of an unresolved symbol, - set these sysctls to 1 and file a bug report including details about - the affected module. - 20251115: The FreeBSD-base repository is now defined in /etc/pkg/FreeBSD.conf, disabled by default. In -CURRENT and -STABLE this points at nightly diff --git a/sys/kern/link_elf.c b/sys/kern/link_elf.c index f910fc3d5df5..ebd203858b66 100644 --- a/sys/kern/link_elf.c +++ b/sys/kern/link_elf.c @@ -203,7 +203,7 @@ static struct linker_class link_elf_class = { link_elf_methods, sizeof(struct elf_file) }; -static bool link_elf_leak_locals = false; +static bool link_elf_leak_locals = true; SYSCTL_BOOL(_debug, OID_AUTO, link_elf_leak_locals, CTLFLAG_RWTUN, &link_elf_leak_locals, 0, "Allow local symbols to participate in global module symbol resolution"); diff --git a/sys/kern/link_elf_obj.c b/sys/kern/link_elf_obj.c index 759cd75cba31..a3a53a39bfd6 100644 --- a/sys/kern/link_elf_obj.c +++ b/sys/kern/link_elf_obj.c @@ -192,7 +192,7 @@ static struct linker_class link_elf_class = { link_elf_methods, sizeof(struct elf_file) }; -static bool link_elf_obj_leak_locals = false; +static bool link_elf_obj_leak_locals = true; SYSCTL_BOOL(_debug, OID_AUTO, link_elf_obj_leak_locals, CTLFLAG_RWTUN, &link_elf_obj_leak_locals, 0, "Allow local symbols to participate in global module symbol resolution");
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?6925e3f4.8ba9.54553559>
