https://sourceware.org/bugzilla/show_bug.cgi?id=33454

            Bug ID: 33454
           Summary: [BUG] A SEGV in sec_merge_emit at merge.c:539
           Product: binutils
           Version: 2.45
            Status: UNCONFIRMED
          Severity: normal
          Priority: P2
         Component: ld
          Assignee: unassigned at sourceware dot org
          Reporter: yfzhang23 at stu dot pku.edu.cn
  Target Milestone: ---

Created attachment 16350
  --> https://sourceware.org/bugzilla/attachment.cgi?id=16350&action=edit
POC

## Description

- Version: Binutils 2.45
- Environment: Ubuntu 20.04.6 LTS, Clang 12.0.0

## Steps to reproduce

export CC="clang"
export CFLAGS="-g -fsanitize=address"
./configure
make -j
./ld/ld-new --version-exports-section symbol --shared $POC

## Sanitizer output

==139064==ERROR: AddressSanitizer: SEGV on unknown address 0x00000000005e (pc
0x00000093022c bp 0x7ffce66602e0 sp 0x7ffce66601d0 T0)
==139064==The signal is caused by a READ memory access.
==139064==Hint: address points to the zero page.
    #0 0x93022c in sec_merge_emit
/benchmark/bin/binutils-2.45/bfd/merge.c:539:26
    #1 0x93014b in _bfd_write_merged_section
/benchmark/bin/binutils-2.45/bfd/merge.c:1099:9
    #2 0x76c4fc in elf_link_input_bfd
/benchmark/bin/binutils-2.45/bfd/elflink.c:12214:10
    #3 0x75b599 in bfd_elf_final_link
/benchmark/bin/binutils-2.45/bfd/elflink.c:13185:11
    #4 0x545133 in ldwrite /benchmark/bin/binutils-2.45/ld/ldwrite.c:548:8
    #5 0x53cc51 in main /benchmark/bin/binutils-2.45/ld/./ldmain.c:912:3
    #6 0x7f66bfe7e082 in __libc_start_main
(/lib/x86_64-linux-gnu/libc.so.6+0x24082)
    #7 0x41d6ad in _start (/benchmark/bin/binutils-2.45/ld/ld-new+0x41d6ad)

AddressSanitizer can not provide additional info.
SUMMARY: AddressSanitizer: SEGV /benchmark/bin/binutils-2.45/bfd/merge.c:539:26
in sec_merge_emit
==139064==ABORTING

## Credit

Reported by Yifan Zhang, [PLL](https://pl.cs.pku.edu.cn/en/)

-- 
You are receiving this mail because:
You are on the CC list for the bug.

Reply via email to