On 10/23/2016 23:55, Waldemar Brodkorb wrote: > Hi Joshua, > Joshua Kinard wrote, > >> I think I've run into a rather odd bug on a big-endian MIPS platform while >> trying to hand-assemble a MIPS-II ISA netboot image built from a uclibc-ng >> chroot. In my netboot, I need to include xfsprogs, but this has a dependency >> on the 'valloc' function call. So in uclibc-ng, I enabled >> CONFIG_UCLIBC_SUSV2_LEGACY to enable that function, and rebuilt uclibc-ng. >> This fixes the xfsprogs build, but it very subtly breaks busybox's ash shell. >> >> After rebuilding uclibc-ng, then rebuilding busybox statically/multicall, if >> you run /bin/ash with a malformed argument or give it a script to execute >> that >> doesn't have the execute bit set, you get a SIGSEGV: >> >> Fudging up the argument syntax to /bin/ash: >> octane / # /bin/ash "-c" >> /bin/ash: -c requires an argument >> Segmentation fault >> >> Via a non-executable script "x.sh", we start with this sample: >> octane / # cat ./x.sh >> #!/bin/ash >> echo "foo!" >> >> If "x.sh" has the executable bit set, we're all good: >> octane / # ls -l ./x.sh >> -rwxr-xr-x 1 root root 24 Oct 12 01:57 ./x.sh >> octane / # /bin/ash -c ./x.sh >> foo! >> >> But if we turn off the executable bit... >> octane / # chmod -x ./x.sh >> octane / # ls -l ./x.sh >> -rw-r--r-- 1 root root 24 Oct 12 01:57 ./x.sh >> octane / # /bin/ash -c ./x.sh >> /bin/ash: ./x.sh: Permission denied >> Segmentation fault > > After sorting out my last bootup problems (missing N32/O32 binary > support in the kernel), I can confirm that the bug is fixed in > uCLibc-ng 1.0.19: > > root@openadk:/root # ash -c /tmp/c.sh > ash: /tmp/c.sh: Permission denied > root@openadk:/root # chmod 755 . > root@openadk:/root # chmod 755 /tmp/c.sh > root@openadk:/root # ash -c /tmp/c.sh > foo! > root@openadk:/root # ash -c > ash: -c requires an argument > root@openadk:/root # ls /lib > > Please update to 1.0.19, thanks > Waldemar
Sorry for the delay, got tied up with things. I'd already switched the busybox build to a shared library from a static one, which worked around the issue for me, but I am building 1.0.19 now. I'll let you know if any additional issues crop up. And for the record, on your last e-mail, an RM52XX O2 needs -march=rm5200 to gcc. Stock -mips4 or -march=r5000 won't hurt, either. Now to just figure out the libtirpc bit... -- Joshua Kinard Gentoo/MIPS ku...@gentoo.org 6144R/F5C6C943 2015-04-27 177C 1972 1FB8 F254 BAD0 3E72 5C63 F4E3 F5C6 C943 "The past tempts us, the present confuses us, the future frightens us. And our lives slip away, moment by moment, lost in that vast, terrible in-between." --Emperor Turhan, Centauri Republic _______________________________________________ devel mailing list devel@uclibc-ng.org http://mailman.uclibc-ng.org/cgi-bin/mailman/listinfo/devel