summaryrefslogtreecommitdiff
path: root/scripts/Makefile.vmlinux
diff options
context:
space:
mode:
authorNathan Chancellor <nathan@kernel.org>2026-10-21 11:31:08 -0700
committerNathan Chancellor <nathan@kernel.org>2026-10-21 11:31:08 -0700
commit83deedcf85af511dc120b3cd8ee597d211cdf2fb (patch)
treed119529d1f9a4cbea27059304773f19b44e4a705 /scripts/Makefile.vmlinux
parenta804c5742bff224d4cb4d25dd383554d598be32b (diff)
parente58096244338308dde3fa76982c8042981ddda52 (diff)
downloadlinux-next-83deedcf85af511dc120b3cd8ee597d211cdf2fb.tar.gz
linux-next-83deedcf85af511dc120b3cd8ee597d211cdf2fb.zip
Merge branch 'kbuild-fixes-unstable' into kbuild-fixes-for-next
Address following conflicts. - arch/alpha/boot between c437950dceb8 ("alpha: add self-extracting compressed kernel boot stub") and 0d4d70da348b ("kbuild: Mark the gzip recipes as recursive") - init/Kconfig between eb13a1ff271b ("random: vDSO: avoid call to memset() when zeroing reserved parameter") and f85147b291e3 ("kbuild: move the toolchain checks into scripts/Kconfig.toolchain") Signed-off-by: Nathan Chancellor <nathan@kernel.org>
Diffstat (limited to 'scripts/Makefile.vmlinux')
-rw-r--r--scripts/Makefile.vmlinux20
1 files changed, 2 insertions, 18 deletions
diff --git a/scripts/Makefile.vmlinux b/scripts/Makefile.vmlinux
index fcae1e432d9a..95b523fe4f9e 100644
--- a/scripts/Makefile.vmlinux
+++ b/scripts/Makefile.vmlinux
@@ -89,11 +89,8 @@ remove-section-$(CONFIG_ARCH_VMLINUX_NEEDS_RELOCS) += '.rel.*'
remove-symbols := -w --strip-unneeded-symbol='__mod_device_table__*'
-# To avoid warnings: "empty loadable segment detected at ..." from GNU objcopy,
-# it is necessary to remove the PT_LOAD flag from the segment.
quiet_cmd_strip_relocs = OBJCOPY $@
- cmd_strip_relocs = $(OBJCOPY) $(patsubst %,--set-section-flags %=noload,$(remove-section-y)) $< $@; \
- $(OBJCOPY) $(addprefix --remove-section=,$(remove-section-y)) $(remove-symbols) $@
+ cmd_strip_relocs = $(OBJCOPY) $(addprefix --remove-section=,$(remove-section-y)) $(remove-symbols) $< $@
targets += vmlinux
vmlinux: vmlinux.unstripped FORCE
@@ -102,21 +99,8 @@ vmlinux: vmlinux.unstripped FORCE
# modules.builtin.modinfo
# ---------------------------------------------------------------------------
-# .modinfo in vmlinux.unstripped is aligned to 8 bytes for compatibility with
-# tools that expect vmlinux to have sufficiently aligned sections but the
-# additional bytes used for padding .modinfo to satisfy this requirement break
-# certain versions of kmod with
-#
-# depmod: ERROR: kmod_builtin_iter_next: unexpected string without modname prefix
-#
-# Strip the trailing padding bytes after extracting .modinfo to comply with
-# what kmod expects to parse.
quiet_cmd_modules_builtin_modinfo = GEN $@
- cmd_modules_builtin_modinfo = $(cmd_objcopy); \
- sed -i 's/\x00\+$$/\x00/g' $@; \
- chmod -x $@
-
-OBJCOPYFLAGS_modules.builtin.modinfo := -j .modinfo -O binary
+ cmd_modules_builtin_modinfo = $(OBJCOPY) -O binary -j .modinfo --dump-section .modinfo=$@ $< /dev/null
targets += modules.builtin.modinfo
modules.builtin.modinfo: vmlinux.unstripped FORCE