Description of problem: Started running on kernel-xen (in Domain-0) and QEMU no longer works. No kqemu used, qemu runs fully as a non-privileged user, just completely regular process. qemu ran in XEN domain on the same host with kernel-2.6.16 built from linux-2.6-xen.hg works. Both Domain-0 and the XEN domain run RawHide.i386. Version-Release number of selected component (if applicable): kernel-xen-2.6.18-1.2747.fc6.i686 xen-3.0.2-44.i386 qemu-0.8.2-3.fc6.i386 SDL-1.2.10-6.2.i386 alsa-lib-1.0.12-2.fc6.i386 glibc-2.5-3.i686 libX11-1.0.3-4.fc6.i386 libXau-1.0.1-3.1.i386 libXcursor-1.1.7-1.1.i386 libXdmcp-1.0.1-2.1.i386 libXext-1.0.1-2.1.i386 libXfixes-4.0.1-2.1.i386 libXrandr-1.1.1-3.1.i386 libXrender-0.9.1-3.1.i386 How reproducible: Always. Steps to Reproduce: 1. qemu -cdrom /dev/zero -net none -m 1 Actual results: Could not open '/dev/kqemu' - QEMU acceleration layer not activated [segv] Expected results: Could not open '/dev/kqemu' - QEMU acceleration layer not activated [displayed window containing Bochs BIOS screen with failed boot] Additional info: core file etc. upon request but you should easily reproduce it yourself. Not fully certain it is XEN specific but I use QEMU pretty often and it worked last time on non-XEN kernel. Program terminated with signal 11, Segmentation fault. #0 cpu_x86_exec (env1=0x9d70998) at /usr/src/debug/qemu-0.8.2/cpu-exec.c:772 b772 gen_func(); (gdb) bt #0 cpu_x86_exec (env1=0x9d70998) at /usr/src/debug/qemu-0.8.2/cpu-exec.c:772 #1 0x08050968 in main_loop () at /usr/src/debug/qemu-0.8.2/vl.c:5069 #2 0x08051de3 in main (argc=1536, argv=0x0) at /usr/src/debug/qemu-0.8.2/vl.c:6221 Previous frame inner to this frame (corrupt stack?)
I just tried this with kernel-xen-2.6.18-1.2784.fc6 xen-3.0.2-44 qemu-0.8.2-3.fc6 And it worked for me. Could you verify that the latest kernel-xen fixes this problem?
Created attachment 138700 [details] core.gz of: qemu -cdrom /dev/zero -net none -m 1 kernel-xen-2.6.18-1.2798.fc6.i686 xen-3.0.2-45.el5.i386 qemu-0.8.2-3.fc6.i386 It is sad you could not reproduce it. Really running i386 (32-bit)?
It is workaroundable by echo 0 >/proc/sys/kernel/exec-shield (still on that kernel-xen-2.6.18-1.2798.fc6.i686) as suggested by Caolan McNamara in Bug 210748. Still not aware of the specific cause but I assume you already know.
No I didn't notice that this was for i386 only. You did mention that you were using that, but I wasn't. So I was able to get it to seg fault. OK, now that I have something that doesn't work, I can take a closer look at it. I also switched this BZ to state that this is not for all hardware, but for i686.
The fix for bz 200382 seems to have caused this bug. Will look into it further.
OK, I've confirmed that the fix for 200382 caused this problem. I have a patch that has already been submitted to the maintainers. But I must first confirm that the patch doesn't break 200382 before I close this.
change QA contact
Tried with 2.6.20-1.2933.fc6xen.i686, with execshield enabled; seems to work fine.
Since this seems to work on FC6 and RHEL-5, closing this bug out. Please re-open if you still have problems. Chris Lalancette