summary refs log tree commit diff stats
path: root/results/scraper/launchpad-without-comments/1318281
blob: 1b7170a61df54157b6651bf2d5a15411751cb95d (plain) (blame)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
linux-user: x86_64 target fails to call sys_futex()

I'm building the latest QEMU (06b4f00d53637f2c16a62c2cbaa30bffb045cf88) on ARM to run some x86_64 executables in user mode. This is my configuration:

./configure \
  --prefix=/root/qemu-x86_64 \
  --target-list=x86_64-linux-user \
  --disable-system \
  --disable-tools

The following program is used for testing:

https://gist.github.com/hujiajie/e8cff43b574b399c8f59#file-test-c

I compile the test program in Debian-7.5-amd64 like this:

gcc -o test `pkg-config --cflags glib-2.0` test.c `pkg-config --static --libs glib-2.0` -static

and launch the program on ARM with

qemu-x86_64 test

The test crashes with the following message:

qemu: uncaught target signal 11 (Segmentation fault) - core dumped
Segmentation fault

The output of `strace qemu-x86_64 test` is here:

https://gist.github.com/hujiajie/88d1d5e580d432d11b2d#file-test-strace-log

It seems that the error is caused by the failure of the futex syscall.

qemu-i386 could launch the 32-bit test perfectly, the problem only happens on a x86_64 target.