[Top][All Lists]
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[Qemu-devel] [Bug 739785] Re: qemu-i386 user mode on ARMv5 host fails (b
From: |
Artyom |
Subject: |
[Qemu-devel] [Bug 739785] Re: qemu-i386 user mode on ARMv5 host fails (bash: fork: Invalid argument) |
Date: |
Mon, 01 Aug 2011 12:15:18 -0000 |
Further research shown that the issue is that NPTL (Native Posix Threads) is
not supported for i386 user mode emulation.
That causes the described issue in binaries compiled with NPTL (most modern
ones).
One way to fix this that worked for me is a patch from here:
http://patchwork.ozlabs.org/patch/45206
I was able to chroot into i386 on mipsel host with this one, and it
mostly worked, no problems running other programs from bash.
--
You received this bug notification because you are a member of qemu-
devel-ml, which is subscribed to QEMU.
https://bugs.launchpad.net/bugs/739785
Title:
qemu-i386 user mode on ARMv5 host fails (bash: fork: Invalid argument)
Status in QEMU:
New
Bug description:
Good time of day everybody,
I have been trying to make usermode qemu on ARM with plugapps
(archlinux) with archlinux i386 chroot to work.
1. I installed arch linux in a virtuabox and created a chroot for it with
mkarchroot. Transferred it to my pogo plug into /i386/
2. I comiled qemu-i386 static and put it into /i386/usr/bin/
./configure --static --disable-blobs --disable-system
--target-list=i386-linux-user
make
3. I also compiled linux kernel 2.6.38 with CONFIG_BINFMT_MISC=y and
installed it.
uname -a
Linux Plugbox 2.6.38 #4 PREEMPT Fri Mar 18 22:19:10 CDT 2011 armv5tel
Feroceon 88FR131 rev 1 (v5l) Marvell SheevaPlug Reference Board GNU/Linux
4. Added the following options into /etc/rc.local
/sbin/modprobe binfmt_misc
/bin/mount binfmt_misc -t binfmt_misc /proc/sys/fs/binfmt_misc
echo
':qemu-i386:M::\x7fELF\x01\x01\x01\x00\x00\x00\x00\x00\x00\x00\x00\x00\x02\x00\x03\x00:\xff\xff\xff\xff\xff\xfe\xfe\xff\xff\xff\xff\xff\xff\xff\xff\xff\xfb\xff\xff\xff:/usr/bin/qemu-i386:'
>/proc/sys/fs/binfmt_misc/register
5. Also copied ld-linux.so.3 (actually ld-2.13.so because ld-
linux.so.3 is a link to that file) from /lib/ to /i386/lib/
6.Now i chroot into /i386 and I get this:
address@hidden i386]# chroot .
[II aI hnve ao address@hidden /]# pacman -Suy
bash: fork: Invalid argument
7.I also downloaded linux-user-test-0.3 from qemu website and ran the test:
address@hidden linux-user-test-0.3]# make
./qemu-linux-user.sh
[qemu-i386]
../qemu-0.14.0/i386-linux-user/qemu-i386 -L ./gnemul/qemu-i386 i386/ls -l
dummyfile
BUG IN DYNAMIC LINKER ld.so: dl-version.c: 210: _dl_check_map_versions:
Assertion `needed != ((void *)0)' failed!
make: *** [test] Error 127
To manage notifications about this bug go to:
https://bugs.launchpad.net/qemu/+bug/739785/+subscriptions
- [Qemu-devel] [Bug 739785] Re: qemu-i386 user mode on ARMv5 host fails (bash: fork: Invalid argument),
Artyom <=