https://sourceware.org/bugzilla/show_bug.cgi?id=31002
Bug ID: 31002 Summary: objcopy segfault in coff_apply_checksum Product: binutils Version: 2.41 Status: NEW Severity: normal Priority: P2 Component: binutils Assignee: unassigned at sourceware dot org Reporter: sam at gentoo dot org Target Milestone: --- Hit this with dracut calling `objcopy` while creating an initramfs. ``` + gdb --batch -ex run -ex bt --args objcopy --add-section .osrel=/etc/os-release --change-section-vma .osrel=0x14dfb4000 --add-section .cmdline=/var/tmp/portage/sys-kernel/gentoo-kernel-6.5.9/temp/dracut.BjlXzx/uefi/cmdline.txt --change-section-vma .cmdline=0x14dfb5000 --add-section .linux=/usr/src/linux-6.5.9/arch/x86/boot/bzImage --change-section-vma .linux=0x14dfb6000 --add-section .initrd=/var/tmp/portage/sys-kernel/gentoo-kernel-6.5.9/temp/dracut.BjlXzx/initramfs.img --change-section-vma .initrd=0x14e950000 /usr/lib/systemd/boot/efi/linuxx64.efi.stub /var/tmp/portage/sys-kernel/gentoo-kernel-6.5.9/temp/dracut.BjlXzx/uefi/linux.efi [Thread debugging using libthread_db enabled] Using host libthread_db library "/usr/lib64/libthread_db.so.1". Program received signal SIGSEGV, Segmentation fault. coff_compute_checksum (pelength=<synthetic pointer>, abfd=0x555555590730) at /usr/src/debug/sys-devel/binutils-2.41-r2/binutils-2.41/bfd/coffcode.h:3378 3378 coff_read_word_from_buffer (cur_buf, cur_buf_size, &value, pelength); #0 coff_compute_checksum (pelength=<synthetic pointer>, abfd=0x555555590730) at /usr/src/debug/sys-devel/binutils-2.41-r2/binutils-2.41/bfd/coffcode.h:3378 #1 coff_apply_checksum (abfd=0x555555590730) at /usr/src/debug/sys-devel/binutils-2.41-r2/binutils-2.41/bfd/coffcode.h:3417 #2 0x00007ffff77e2400 in coff_write_object_contents (abfd=<optimized out>) at /usr/src/debug/sys-devel/binutils-2.41-r2/binutils-2.41/bfd/coffcode.h:4273 #3 0x00007ffff770770c in bfd_close (abfd=abfd@entry=0x555555590730) at /usr/src/debug/sys-devel/binutils-2.41-r2/binutils-2.41/bfd/opncls.c:891 #4 0x0000555555570920 in copy_file (input_filename=input_filename@entry=0x7fffffff916a "/usr/lib/systemd/boot/efi/linuxx64.efi.stub", output_filename=output_filename@entry=0x7fffffff9196 "/var/tmp/portage/sys-kernel/gentoo-kernel-6.5.9/temp/dracut.BjlXzx/uefi/linux.efi", ofd=-1, in_stat=in_stat@entry=0x7fffffff7fe0, input_target=<optimized out>, output_target=<optimized out>, input_arch=0x0) at /usr/src/debug/sys-devel/binutils-2.41-r2/binutils-2.41/binutils/objcopy.c:3967 #5 0x000055555557493a in copy_main (argv=<optimized out>, argc=19) at /usr/src/debug/sys-devel/binutils-2.41-r2/binutils-2.41/binutils/objcopy.c:6034 #6 main (argc=19, argv=<optimized out>) at /usr/src/debug/sys-devel/binutils-2.41-r2/binutils-2.41/binutils/objcopy.c:6135 ``` I'm a bit puzzled as to what's happened here, actually. This happened in the middle of an experiment with GCC 14's -fhardened-control-flow-redundancy, but I've built gcc/binutils/kernel without it, so I'm not sure it's related. -- You are receiving this mail because: You are on the CC list for the bug.