Openwall GNU/*/Linux - a small security-enhanced Linux distro for servers
[<prev] [next>] [<thread-prev] [day] [month] [year] [list]
Date: Thu, 19 Mar 2020 09:43:51 +1100
From: Patrick Oppenlander <patrick.oppenlander@...il.com>
To: musl@...ts.openwall.com
Subject: Re: armv7-m musl 1.2.0 toolchain crash

On Thu, Mar 19, 2020 at 6:10 AM Szabolcs Nagy <nsz@...t70.net> wrote:
>
> * Patrick Oppenlander <patrick.oppenlander@...il.com> [2020-03-16 16:41:17 +1100]:
> > After the update to musl 1.2.0 (1.1.24 was fine) ld crashes when
> > trying to link a C++ executable. C executables successfully link. The
> > toolchain was built as at commit
> > 5086175f29021e3bebb7d9f5d83c4a796d96ebbd of musl-cross-make with the
> > following configuration:
> >
> > TARGET = armv7m-linux-musleabihf
> > GCC_CONFIG += --with-cpu=cortex-m7  # easier than arch/fpu/tune
> > GCC_CONFIG += --enable-languages=c,c++
> > GCC_CONFIG += --disable-libquadmath --disable-decimal-float
> > GCC_CONFIG += --enable-default-pie
> > GCC_CONFIG += --enable-cxx-flags="-ffunction-sections"
> > MUSL_CONFIG += --enable-debug
> > COMMON_CONFIG += CFLAGS="-g0 -Os" CXXFLAGS="-g0 -Os"
> > COMMON_CONFIG += --disable-nls
> > COMMON_CONFIG += --with-debug-prefix-map=\$(CURDIR)=
> >
> > Host compiler is arch linux gcc 9.3.0-1.
> >
> > This results in a toolchain which does the following:
> > % cat test.c
> > int main() { return 0; }
> > % armv7m-linux-musleabi-gcc test.c
> > % armv7m-linux-musleabi-g++ test.c
> > collect2: fatal error: ld terminated with signal 11 [Segmentation
> > fault], core dumped
> > compilation terminated.
> >
> > The crash is a null pointer dereference in ld here (sym_hashes is 0):
> >
> > (gdb) bt
> > #0  cmse_scan (input_bfd=0x555555e3a110, htab=0x55555578a260,
> > out_attr=0x5555557885c0, sym_hashes=0x0,
> > cmse_stub_created=0x7fffffffd4c8)
> >     at ../../src_binutils/bfd/elf32-arm.c:6016
>
>
> this is likely fixed by this binutils commit:
>
> commit 73d5efd7e13ebd8fe87278224bc2ae777af3de52
> Author:     Alan Modra <amodra@...il.com>
> AuthorDate: 2019-11-21 08:57:00 +1030
> Commit:     Alan Modra <amodra@...il.com>
> CommitDate: 2019-11-21 21:08:30 +1030
>
>     ARM cmse_scan segfault
>

Thanks for looking into it.

Patrick

Powered by blists - more mailing lists

Your e-mail address:

Confused about mailing lists and their use? Read about mailing lists on Wikipedia and check out these guidelines on proper formatting of your messages.