From: Jan Beulich Date: Mon, 13 Jan 2025 12:32:19 +0000 (+0100) Subject: bfd/ELF: slightly "better" file alignment for object files X-Git-Tag: binutils-2_44~173 X-Git-Url: http://git.ipfire.org/?a=commitdiff_plain;h=d41df13ab36b224a622c0bdf28a96a0dee79db77;p=thirdparty%2Fbinutils-gdb.git bfd/ELF: slightly "better" file alignment for object files PR gas/32435 Commit 1f1b5e506bf0 ("bfd/ELF: restrict file alignment for object files") caused an issue in the Linux kernels modpost utility, which was building upon .rodata sections to be 4-byte aligned in the file when they have 4-byte alignment. While we don't want to revert back to original behavior, apply the same alignment "capping" as done originally in two other places also for "ordinary" sections. --- diff --git a/bfd/elf.c b/bfd/elf.c index 218d58df8be..41668475ea1 100644 --- a/bfd/elf.c +++ b/bfd/elf.c @@ -6805,8 +6805,12 @@ assign_file_positions_except_relocs (bfd *abfd, hdr->sh_offset = -1; } else + /* There shouldn't be a need to effect "capped" file alignment here, + yet at least the Linux kernel's modpost utility was found to be + unhappy without. While the issue was addressed there, let's be + kind for at least the foreseeable future ... */ off = _bfd_elf_assign_file_position_for_section (hdr, off, false, - 0); + bed->s->log_file_align); } elf_next_file_pos (abfd) = off;