On 04/11/2016 11:00, John Paul Adrian Glaubitz wrote: > On 11/04/2016 10:53 AM, Laurent Vivier wrote: >> I think it's more likely a linux-user bug than a target-sh4 bug. >> >> As you report in a mail to me in February, "do_futex()" must be >> protected against parallel execution for some futex commands. > > FWIW, it works fine on qemu-user-armel last time I tested. I could > build GHC completely on qemu-user for armel without any issues. > > Btw, if anyone wants to test themselves: > > $ wget http://users.physik.fu-berlin.de/~glaubitz/sid-sh4-sbuild-ghc.tgz > $ tar xf sid-sh4-sbuild-ghc.tgz > (compile qemu with --target-list=sh4-linux-user --static) > $ cp -av qemu-sh4 sid-sh4-sbuild-ghc/usr/bin/qemu-sh4-static > $ chroot sid-sh4-sbuild-ghc > (in chroot): > $ cd /root/ghc-7.8.4/utils/ghc-pwd > $ ghc Main.hs
If Haskell is compiled to use the "negative sp" trick that Richard mentioned, it would rely on the SH machine being uniprocessor. Try running chroot with "taskset -c 0". Paolo