Hi Joshua, Joshua Kinard wrote, > 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.
Okay. > Now to just figure out the libtirpc bit... Buildroot or OpenADK is always a good source for cross-compile issues. Take a look at the patches. Another possibility would be to ty the internal ipv4 only RPC implementation in uClibc-ng, but I have'nt used it for a long time. Not sure if rpcbind works with it. I think last time I sed it was with good old portmap. best regards Waldemar _______________________________________________ devel mailing list devel@uclibc-ng.org http://mailman.uclibc-ng.org/cgi-bin/mailman/listinfo/devel