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

            Bug ID: 24225
           Summary: nios2 overflows stack with error message: *** buffer
                    overflow detected ***:
                    /usr/libexec/gcc/nios2-unknown-linux-gnu/ld terminated
           Product: binutils
           Version: 2.32
            Status: UNCONFIRMED
          Severity: normal
          Priority: P2
         Component: ld
          Assignee: unassigned at sourceware dot org
          Reporter: slyfox at inbox dot ru
  Target Milestone: ---

When linking a huge program (GHC) ld attempted to localize format string and
crashed as:

gdb --quiet /usr/libexec/gcc/nios2-unknown-linux-gnu/ld ./core.24349 
Reading symbols from /usr/libexec/gcc/nios2-unknown-linux-gnu/ld...Reading
symbols from
/usr/lib64/debug//usr/x86_64-pc-linux-gnu/nios2-unknown-linux-gnu/binutils-bin/2.32/ld.bfd.debug...done.
done.
[New LWP 24349]
Core was generated by `/usr/libexec/gcc/nios2-unknown-linux-gnu/ld
@/tmp/ccBN1CqS'.
Program terminated with signal SIGABRT, Aborted.
#0  __GI_raise (sig=sig@entry=6) at ../sysdeps/unix/sysv/linux/raise.c:50
50        return ret;
(gdb) bt
#0  __GI_raise (sig=sig@entry=6) at ../sysdeps/unix/sysv/linux/raise.c:50
#1  0x00007f26670fc535 in __GI_abort () at abort.c:79
#2  0x00007f2667158c59 in __libc_message (action=<optimized out>,
fmt=fmt@entry=0x7f2667270133 "*** %s ***: %s terminated\n") at
../sysdeps/posix/libc_fatal.c:181
#3  0x00007f26671f3715 in __GI___fortify_fail_abort
(need_backtrace=need_backtrace@entry=true, msg=msg@entry=0x7f26672700bf "buffer
overflow detected") at fortify_fail.c:28
#4  0x00007f26671f3751 in __GI___fortify_fail (msg=msg@entry=0x7f26672700bf
"buffer overflow detected") at fortify_fail.c:44
#5  0x00007f26671f1880 in __GI___chk_fail () at chk_fail.c:28
#6  0x00007f266714ff79 in _IO_str_chk_overflow (fp=<optimized out>,
c=<optimized out>) at iovsprintf.c:35
#7  0x00007f266715db61 in __GI__IO_default_xsputn (f=0x7fff951a2870,
data=<optimized out>, n=81) at libioP.h:904
#8  0x00007f2667142f42 in __vfprintf_internal (s=s@entry=0x7fff951a2870,
format=format@entry=0x7f26672f9ee4 <error: Cannot access memory at address
0x7f26672f9ee4>, 
    ap=ap@entry=0x7fff951a29b0, mode_flags=mode_flags@entry=6) at
../libio/libioP.h:904
#9  0x00007f2667150021 in __vsprintf_internal (
    string=0x7fff951a2ba0 "невозможно достичь base_DataziData_CharRep_closure
(по адресу 0x02fc1970) из глобального указателя (по адресу 0x02fb8c10), так как
смещ"..., maxlen=maxlen@entry=256, format=0x7f26672f9ee4 <error: Cannot access
memory at address 0x7f26672f9ee4>, args=args@entry=0x7fff951a29b0, 
    mode_flags=mode_flags@entry=6) at iovsprintf.c:96
#10 0x00007f26671f128e in ___sprintf_chk (
    s=s@entry=0x7fff951a2ba0 "невозможно достичь
base_DataziData_CharRep_closure (по адресу 0x02fc1970) из глобального указателя
(по адресу 0x02fb8c10), так как смещ"..., flag=flag@entry=1,
slen=slen@entry=256, format=<optimized out>) at sprintf_chk.c:40
#11 0x00007f266736c004 in sprintf (__fmt=<optimized out>, 
    __s=0x7fff951a2ba0 "невозможно достичь base_DataziData_CharRep_closure (по
адресу 0x02fc1970) из глобального указателя (по адресу 0x02fb8c10), так как
смещ"...) at /usr/include/bits/stdio2.h:36
#12 nios2_elf32_relocate_section (output_bfd=output_bfd@entry=0x5624f9e62be0,
info=0x5624f92f9a60 <link_info>, input_bfd=input_bfd@entry=0x5624fc14f7c0, 
    input_section=input_section@entry=0x5624fc1e13e0, contents=0x5625014d1d00
"\004\376\377\336\025\001", relocs=relocs@entry=0x7f2658973020,
local_syms=0x562500832e90, 
    local_sections=0x5625022f3dc0) at
../../binutils-2.32/bfd/elf32-nios2.c:3846
#13 0x00007f26673947a0 in elf_link_input_bfd
(flinfo=flinfo@entry=0x7fff951a2f60, input_bfd=input_bfd@entry=0x5624fc14f7c0)
at ../../binutils-2.32/bfd/elflink.c:10856
#14 0x00007f26673962bf in bfd_elf_final_link (abfd=<optimized out>,
info=<optimized out>) at ../../binutils-2.32/bfd/elflink.c:12183
#15 0x00005624f9294e2f in ldwrite () at ../../binutils-2.32/ld/ldwrite.c:581
#16 0x00005624f927d410 in main (argc=<optimized out>, argv=<optimized out>) at
../../binutils-2.32/ld/ldmain.c:464

-- 
You are receiving this mail because:
You are on the CC list for the bug.
_______________________________________________
bug-binutils mailing list
bug-binutils@gnu.org
https://lists.gnu.org/mailman/listinfo/bug-binutils

Reply via email to