ash: Segfault during subshell with built-in command (uClibc, i386)

Denys Vlasenko vda.linux at googlemail.com
Mon Apr 7 09:48:01 UTC 2014


On Sat, Mar 29, 2014 at 5:22 AM, Ryan Finnie <ryan at finnie.org> wrote:
> Hello, I'm receiving a segfault when doing the following:
>
> ryan at host:~$ ./busybox ash
> ~ $ FOO="$(echo internal)"
> Segmentation fault
> ~ $ echo $FOO
> internal
> ~ $ FOO="$(./busybox echo external)"
> ~ $ echo $FOO
> external
> ~ $ testfunction() {
>> echo function
>> }
> ~ $ FOO="$(testfunction)"
> Segmentation fault
> ~ $ echo $FOO
> function
> ~ $
>
> The segfault appears to be functionally spurious; the subshell still
> returns the expected values.  It appears to be a combination of:
>
> 1) Subshell with built-in commands
> 2) i386 target (x86_64 and ppc 32-bit work)
> 3) uClibc toolchain (host glibc works)

Which version of uclibc?

Since it seems to be libc-specific, maybe you need to do this:
http://busybox.net/FAQ.html#emu

> I've tested this against the current git tree.  Any help would be
> appreciated, thank you.

What is your .config?

Run "strace -oLOG -f -tt -s99 ./busybox ash", reproduce the bug,
and post LOG.


More information about the busybox mailing list