linux/arch/s390/kernel
Nathan Chancellor 3df15ad837 s390/vmlinux.lds.S: Move .vmlinux.info to end of allocatable sections
[ Upstream commit 9338d660b7 ]

When building s390 defconfig with binutils older than 2.32, there are
several warnings during the final linking stage:

  s390-linux-ld: .tmp_vmlinux1: warning: allocated section `.got.plt' not in segment
  s390-linux-ld: .tmp_vmlinux2: warning: allocated section `.got.plt' not in segment
  s390-linux-ld: vmlinux.unstripped: warning: allocated section `.got.plt' not in segment
  s390-linux-objcopy: vmlinux: warning: allocated section `.got.plt' not in segment
  s390-linux-objcopy: st7afZyb: warning: allocated section `.got.plt' not in segment

binutils commit afca762f598 ("S/390: Improve partial relro support for
64 bit") [1] in 2.32 changed where .got.plt is emitted, avoiding the
warning.

The :NONE in the .vmlinux.info output section description changes the
segment for subsequent allocated sections. Move .vmlinux.info right
above the discards section to place all other sections in the previously
defined segment, .data.

Fixes: 30226853d6 ("s390: vmlinux.lds.S: explicitly handle '.got' and '.plt' sections")
Link: https://sourceware.org/git/?p=binutils-gdb.git;a=commit;h=afca762f598d453c563f244cd3777715b1a0cb72 [1]
Acked-by: Alexander Gordeev <agordeev@linux.ibm.com>
Acked-by: Alexey Gladkov <legion@kernel.org>
Acked-by: Nicolas Schier <nsc@kernel.org>
Link: https://patch.msgid.link/20251008-kbuild-fix-modinfo-regressions-v1-3-9fc776c5887c@kernel.org
Signed-off-by: Nathan Chancellor <nathan@kernel.org>
Signed-off-by: Sasha Levin <sashal@kernel.org>
History 2025-10-19 16:37:16 +02:00
..
diag s390: Use inline qualifier for all EX_TABLE and ALTERNATIVE inline assemblies 2025-03-18 17:13:51 +01:00
syscalls fs: introduce file_getattr and file_setattr syscalls 2025-07-02 17:05:17 +02:00
vdso32 s390/vdso: Switch to generic storage implementation 2025-02-21 09:54:02 +01:00
vdso64 s390/vdso: Switch to generic storage implementation 2025-02-21 09:54:02 +01:00
.gitignore .gitignore: add SPDX License Identifier 2020-03-25 11:50:48 +01:00
abs_lowcore.c s390/lowcore: Convert relocated lowcore alternative to machine feature 2025-03-04 17:18:05 +01:00
alternative.c s390/alternatives: Add debug functionality 2025-03-04 17:18:08 +01:00
asm-offsets.c s390/mm: Reimplement lazy ASCE handling 2025-04-14 11:23:21 +02:00
audit.c audit: add support for the openat2 syscall 2021-10-01 16:52:48 -04:00
audit.h License cleanup: add SPDX GPL-2.0 license identifier to files with no license 2017-11-02 11:10:55 +01:00
cache.c s390/cache: prevent rebuild of shared_cpu_list 2024-03-07 14:41:15 +01:00
cert_store.c s390: Remove optional third argument of strscpy() if possible 2025-04-17 15:16:10 +02:00
compat_audit.c audit: add support for the openat2 syscall 2021-10-01 16:52:48 -04:00
compat_linux.c s390: use generic UID16 implementation 2019-01-18 09:33:18 +01:00
compat_linux.h s390/compat: cleanup compat_linux.h header file 2022-05-06 20:45:16 +02:00
compat_ptrace.h License cleanup: add SPDX GPL-2.0 license identifier to files with no license 2017-11-02 11:10:55 +01:00
compat_signal.c s390/vdso: Move vdso symbol handling to separate header file 2024-09-13 17:28:36 +02:00
cpacf.c sysfs: treewide: switch back to attribute_group::bin_attrs 2025-06-17 10:44:15 +02:00
cpcmd.c s390/cpcmd: Convert to use flag output macros 2024-11-13 14:31:32 +01:00
cpufeature.c s390: Explicitly include <linux/export.h> 2025-06-17 18:18:02 +02:00
crash_dump.c s390: Explicitly include <linux/export.h> 2025-06-17 18:18:02 +02:00
ctlreg.c s390: Explicitly include <linux/export.h> 2025-06-17 18:18:02 +02:00
debug.c s390/debug: Fix typo in debug_sprintf_format_fn() comment 2025-08-06 17:18:27 +02:00
dis.c s390: Remove unnecessary include <linux/export.h> 2025-06-17 18:18:02 +02:00
dumpstack.c s390/asm-offsets: Remove ASM_OFFSETS_C 2025-03-31 12:20:39 +02:00
early.c s390/early: Copy last breaking event address to pt_regs 2025-07-09 09:21:46 +02:00
early_printk.c s390/early: Dump register contents and call trace for early crashes 2024-08-22 19:28:11 +02:00
ebcdic.c s390/ebcdic: fix typo in comment 2023-07-27 13:11:35 +02:00
entry.h s390/traps: Change stack overflow message 2025-03-04 17:34:03 +01:00
entry.S stackleak: Rename STACKLEAK to KSTACK_ERASE 2025-07-21 21:35:01 -07:00
facility.c s390: Explicitly include <linux/export.h> 2025-06-17 18:18:02 +02:00
fpu.c s390: Explicitly include <linux/export.h> 2025-06-17 18:18:02 +02:00
ftrace.c s390 updates for 6.15 merge window 2025-03-29 11:59:43 -07:00
ftrace.h s390/ftrace: Remove unused ftrace_plt_template* 2024-08-27 20:16:48 +02:00
guarded_storage.c s390/cpufeature: Convert MACHINE_HAS_GS to cpu_has_gs() 2025-03-04 17:18:04 +01:00
head64.S s390/time: Convert MACHINE_HAS_SCC to machine_has_scc() 2025-03-04 17:18:06 +01:00
hiperdispatch.c s390/cpufeature: Convert MACHINE_HAS_TOPOLOGY to cpu_has_topology() 2025-03-04 17:18:05 +01:00
idle.c s390/idle: Remove duplicate get_lowcore() calls 2024-06-18 17:01:33 +02:00
ima_arch.c s390/kexec_file: Disable kexec_load when IPLed secure 2019-04-29 10:44:03 +02:00
ipl.c sysfs: treewide: switch back to attribute_group::bin_attrs 2025-06-17 10:44:15 +02:00
ipl_vmparm.c s390/cio: remove unused include linux/spinlock.h from cio.h 2021-07-27 09:39:13 +02:00
irq.c s390 updates for 6.15 merge window 2025-03-29 11:59:43 -07:00
jump_label.c jump_label: make initial NOP patching the special case 2022-06-24 09:48:55 +02:00
kdebugfs.c s390: no need to check return value of debugfs_create functions 2019-01-28 15:58:55 +01:00
kexec_elf.c s390: kexec: initialize kexec_buf struct 2025-09-03 17:10:37 -07:00
kexec_image.c s390: kexec: initialize kexec_buf struct 2025-09-03 17:10:37 -07:00
kprobes.c s390/cpufeature: Convert MACHINE_HAS_SEQ_INSN to cpu_has_seq_insn() 2025-03-04 17:18:04 +01:00
lgr.c s390: kernel: convert timeouts to use secs_to_jiffies() 2025-01-12 20:21:01 -08:00
machine_kexec.c s390: Convert MACHINE_IS_[LPAR|VM|KVM], etc, machine_is_[lpar|vm|kvm]() 2025-03-04 17:18:07 +01:00
machine_kexec_file.c s390: kexec: initialize kexec_buf struct 2025-09-03 17:10:37 -07:00
machine_kexec_reloc.c s390/kaslr: add support for R_390_JMP_SLOT relocation type 2020-05-20 10:13:27 +02:00
Makefile s390/skey: Provide infrastructure for executing with non-default access key 2025-06-29 13:12:02 +02:00
mcount.S s390/tracing: Enable HAVE_FTRACE_GRAPH_FUNC 2024-12-26 10:50:05 -05:00
module.c arch: make execmem setup available regardless of CONFIG_MODULES 2024-05-14 00:31:44 -07:00
nmi.c s390/nmi: Print additional information 2025-06-26 15:30:51 +02:00
nospec-branch.c s390/nospec: Push down alternative handling 2024-07-23 16:02:31 +02:00
nospec-sysfs.c s390/nospec: Switch over to sysfs_emit() 2024-10-25 16:03:24 +02:00
numa.c mm/memblock: add memblock_alloc_or_panic interface 2025-01-25 20:22:38 -08:00
os_info.c s390: Remove __bootdata annotations from declarations 2024-12-15 16:19:04 +01:00
perf_cpum_cf.c s390/cpum_cf: Deny all sampling events by counter PMU 2025-08-28 16:47:58 +02:00
perf_cpum_cf_events.c s390/cpumf: Adjust number of leading zeroes for z15 attributes 2025-04-30 11:32:20 +02:00
perf_cpum_sf.c s390: Remove unnecessary include <linux/export.h> 2025-06-17 18:18:02 +02:00
perf_event.c s390: Remove unnecessary include <linux/export.h> 2025-06-17 18:18:02 +02:00
perf_pai_crypto.c s390/pai: Deny all events not handled by this PMU 2025-08-28 16:47:58 +02:00
perf_pai_ext.c s390/pai: Deny all events not handled by this PMU 2025-08-28 16:47:58 +02:00
perf_regs.c s390/fpu: remove anonymous union from struct fpu 2024-02-16 14:30:16 +01:00
process.c arch: copy_thread: pass clone_flags as u64 2025-10-15 12:03:13 +02:00
processor.c s390: Simple strcpy() to strscpy() conversions 2025-04-30 11:41:27 +02:00
ptrace.c s390/ptrace: Use USER_REGSET_NOTE_TYPE() to specify regset note names 2025-07-14 22:27:48 -07:00
reipl.S s390/kdump: Make kdump ready for lowcore relocation 2024-07-23 16:02:32 +02:00
relocate_kernel.S s390/relocate_kernel: adjust indentation 2023-04-19 17:24:18 +02:00
rethook.c s390/rethook: add local rethook header file 2023-02-06 11:13:53 +01:00
rethook.h s390/rethook: add local rethook header file 2023-02-06 11:13:53 +01:00
runtime_instr.c s390/runtime_instrumentation: fix storage key handling 2020-08-17 13:17:10 +02:00
setup.c more s390 updates for 6.17 merge window 2025-08-08 06:56:55 +03:00
signal.c s390/vdso: Move vdso symbol handling to separate header file 2024-09-13 17:28:36 +02:00
skey.c s390/skey: Provide infrastructure for executing with non-default access key 2025-06-29 13:12:02 +02:00
smp.c s390/smp: Use monotonic clock in smp_emergency_stop() 2025-07-21 12:41:55 +02:00
stacktrace.c s390/asm-offsets: Remove ASM_OFFSETS_C 2025-03-31 12:20:39 +02:00
sthyi.c s390: Explicitly include <linux/export.h> 2025-06-17 18:18:02 +02:00
syscall.c s390: Remove 2k vs 4k page table leftovers 2025-03-18 17:13:05 +01:00
sysinfo.c s390: Convert MACHINE_IS_[LPAR|VM|KVM], etc, machine_is_[lpar|vm|kvm]() 2025-03-04 17:18:07 +01:00
text_amode31.S s390/amode31: Use exrl instead of ex 2025-01-13 09:50:17 +01:00
time.c s390/stp: Default to enabled 2025-07-21 12:41:56 +02:00
topology.c sched/fair: Get rid of sched_domains_curr_level hack for tl->cpumask() 2025-10-15 12:03:17 +02:00
trace.c s390/ftrace: fix potential crashes when switching tracers 2020-04-22 16:20:55 +02:00
traps.c s390 updates for 6.15 merge window 2025-03-29 11:59:43 -07:00
unwind_bc.c s390: Explicitly include <linux/export.h> 2025-06-17 18:18:02 +02:00
uprobes.c s390/switch_to: use generic header file 2024-02-12 15:03:33 +01:00
uv.c s390: Explicitly include <linux/export.h> 2025-06-17 18:18:02 +02:00
vdso.c mseal sysmap: enable s390 2025-04-01 15:17:16 -07:00
vmcore_info.c s390: Remove __bootdata annotations from declarations 2024-12-15 16:19:04 +01:00
vmlinux.lds.S s390/vmlinux.lds.S: Move .vmlinux.info to end of allocatable sections 2025-10-19 16:37:16 +02:00
vtime.c s390/vtime: Remove duplicate get_lowcore() calls 2024-06-18 17:01:33 +02:00
wti.c s390/wti: Add debugfs file to display missed grace periods per cpu 2024-08-29 22:56:35 +02:00