From: Rich Felker <dalias@libc.org>
To: musl@lists.openwall.com
Subject: Re: seg fault at src/string/strlen.c:15
Date: Tue, 23 Jan 2018 21:27:43 -0500 [thread overview]
Message-ID: <20180124022743.GX1627@brightrain.aerifal.cx> (raw)
In-Reply-To: <Pine.LNX.4.64.1801231656550.14351@vcn.bc.ca>
On Tue, Jan 23, 2018 at 05:07:32PM -0800, Po-yi Wang wrote:
> hi
>
> I try to compile make-4.1 for i486,ppc,arm targets.
> i486 seem ok. "make --version" runs and no problem.
> for ppc and arm targets, both seg fault at exactly the same place.
> I had to recompile musl-1.1.18 for both with "-g3" to narrow down
> the problem. it should be easy to reproduce. here is some outputs:
>
> [ppc][1] cd /build/make-4.1; file make
> make: ELF 32-bit MSB executable, PowerPC or cisco 4500, version 1
> (SYSV), statically linked, not stripped
> [ppc][1] cd /build/make-4.1; cp make make-4.1 [ppc][1] cd
> /build/make-4.1; gdb make-4.1
> GNU gdb 6.5
> Copyright (C) 2006 Free Software Foundation, Inc.
> GDB is free software, covered by the GNU General Public License, and
> you are
> welcome to change it and/or distribute copies of it under certain
> conditions.
> Type "show copying" to see the conditions.
> There is absolutely no warranty for GDB. Type "show warranty" for
> details.
> This GDB was configured as "powerpc-unknown-linux-gnu"...Using host
> libthread_db library "/lib/libthread_db.so.1".
>
> (gdb) run --version
> Starting program: /tmp/build/make-4.1/make-4.1 --version
>
> Program received signal SIGSEGV, Segmentation fault.
> strlen (s=0x0) at src/string/strlen.c:15
> 15 for (w = (const void *)s; !HASZERO(*w); w++);
> (gdb)
This means make is calling strlen(0), so the bug is somewhere else --
in whatever causing the string pointer passed to strlen to be a null
pointer. Can you show a full backtrace (bt) rather than just the point
of the crash?
> output for arm target:
>
> GNU gdb (GDB) 8.0
> Copyright (C) 2017 Free Software Foundation, Inc.
> License GPLv3+: GNU GPL version 3 or later
> <http://gnu.org/licenses/gpl.html>
> This is free software: you are free to change and redistribute it.
> There is NO WARRANTY, to the extent permitted by law. Type "show copying"
> and "show warranty" for details.
> This GDB was configured as "armv7l-unknown-linux-gnueabi".
> Type "show configuration" for configuration details.
> For bug reporting instructions, please see:
> <http://www.gnu.org/software/gdb/bugs/>.
> Find the GDB manual and other documentation resources online at:
> <http://www.gnu.org/software/gdb/documentation/>.
> For help, type "help".
> Type "apropos word" to search for commands related to "word"...
> Reading symbols from make-4.1...done.
> (gdb) run --version
> Starting program: /tmp/build/make-4.1/make-4.1 --version
>
> Program received signal SIGSEGV, Segmentation fault.
> 0x0002c3a0 in strlen (s=<optimized out>, s@entry=0x0) at
> src/string/strlen.c:15
> 15 for (w = (const void *)s; !HASZERO(*w); w++);
> (gdb)
Same here.
Does the problem also happen with make 4.2? Alpine Linux is using make
4.2.1 I think and I haven't heard of such a problem from them.
Rich
next prev parent reply other threads:[~2018-01-24 2:27 UTC|newest]
Thread overview: 5+ messages / expand[flat|nested] mbox.gz Atom feed top
2018-01-24 1:07 Po-yi Wang
2018-01-24 2:27 ` Rich Felker [this message]
2018-01-24 2:33 ` Andre Renaud
2018-01-24 2:55 ` Po-yi Wang
2018-01-24 2:55 ` Po-yi Wang
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=20180124022743.GX1627@brightrain.aerifal.cx \
--to=dalias@libc.org \
--cc=musl@lists.openwall.com \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
Code repositories for project(s) associated with this public inbox
https://git.vuxu.org/mirror/musl/
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).