Kernel 3.9 - can't boot qemu with accel=kvm _and_ networking enabled
Hello,
After upgrading kernel from 3.8.x to 3.9 booting virtual machine with kvm acceleration enabled stuck at or after iPXE initialization:/usr/bin/qemu-system-x86_64 ... works as expected /usr/bin/qemu-system-x86_64 -machine accel=kvm ... stuck If network is disabled (-net none) everything workd as expected.
I'd appreciate any thoughts regarding this problem.
Paolo Bonzini
maintainerIl 07/05/2013 15:48, Vladimir ha scritto:
Quoted 7 lines
Hello,
After upgrading kernel from 3.8.x to 3.9 booting virtual machine with kvm acceleration enabled stuck at or after iPXE initialization:
/usr/bin/qemu-system-x86_64... works as expected/usr/bin/qemu-system-x86_64-machine accel=kvm ... stuck If network is disabled (-net none) everything workd as expected.
What is the full command line you're using, and the versions of qemu/seabios/ipxe?
Paolo
Paolo,
The full command line is:
qemu-system-x86_64 -machine accel=kvm -m 1024m \
-net tap -net nic \
-drive file=/dev/zpool/testsrv,index=0,cache=writethrough \
-k en-us \
-no-kvm-irqchip \
-vga cirrus
I've tried any combinations of "-net" options, but the result is always the same. I think this somehow related to
http://article.gmane.org/gmane.comp.emulators.kvm.devel/109461, as setting "emulate_invalid_guest_state=0" solves the problem However, I'm not aware of any consequences of this change.
Regards,
Vlad.
Quoted 12 lines · Paolo Bonzini
Il 07/05/2013 15:48, Vladimir ha scritto:
Quoted 7 lines
Hello,
After upgrading kernel from 3.8.x to 3.9 booting virtual machine with kvm acceleration enabled stuck at or after iPXE initialization:
/usr/bin/qemu-system-x86_64... works as expected/usr/bin/qemu-system-x86_64-machine accel=kvm ... stuck If network is disabled (-net none) everything workd as expected.What is the full command line you're using, and the versions of qemu/seabios/ipxe?
Paolo
Paolo Bonzini
maintainerQuoted 10 lines
Paolo,
The full command line is:
qemu-system-x86_64 -machine accel=kvm -m 1024m \
-net tap -net nic \
-drive file=/dev/zpool/testsrv,index=0,cache=writethrough \
-k en-us \
-no-kvm-irqchip \
-vga cirrus
Quoted 5 lines
I've tried any combinations of "-net" options, but the result is always the same. I think this somehow related to
http://article.gmane.org/gmane.comp.emulators.kvm.devel/109461, as setting "emulate_invalid_guest_state=0" solves the problem However, I'm not aware of any consequences of this change.
Actually, the other bug involves sgabios and you are not using it. Please try executing the following commands from the monitor (you can use "-monitor stdio" to make cut-and-paste simpler):
x/8i \$pc
x/64b \$pc
and include the output in the reply to this message.
Thanks,
Paolo
Here they are:
(qemu) x/8i $pc
0x00000000000fc49b: lgdtw %cs:-0x2c60 0x00000000000fc4a1: mov %cr0,%eax 0x00000000000fc4a4: or $0x1,%eax 0x00000000000fc4a8: mov %eax,%cr0 0x00000000000fc4ab: ljmpl $0x8,$0xfc4b3 0x00000000000fc4b3: mov $0x10,%ax 0x00000000000fc4b6: add %al,(%bx,%si) 0x00000000000fc4b8: mov %ax,%ds
(qemu) x/64b $pc
0x00000000000fc49b: lgdtw %cs:-0x2c60 0x00000000000fc4a1: mov %cr0,%eax 0x00000000000fc4a4: or $0x1,%eax 0x00000000000fc4a8: mov %eax,%cr0 0x00000000000fc4ab: ljmpl $0x8,$0xfc4b3 0x00000000000fc4b3: mov $0x10,%ax 0x00000000000fc4b6: add %al,(%bx,%si) 0x00000000000fc4b8: mov %ax,%ds 0x00000000000fc4ba: mov %ax,%es 0x00000000000fc4bc: mov %ax,%ss 0x00000000000fc4be: mov %ax,%fs 0x00000000000fc4c0: mov %ax,%gs 0x00000000000fc4c2: mov %cx,%ax 0x00000000000fc4c4: jmp *%dx 0x00000000000fc4c6: mov %ax,%cx 0x00000000000fc4c8: mov $0x20,%ax 0x00000000000fc4cb: add %al,(%bx,%si) 0x00000000000fc4cd: mov %ax,%ds 0x00000000000fc4cf: mov %ax,%es 0x00000000000fc4d1: mov %ax,%ss 0x00000000000fc4d3: mov %ax,%fs 0x00000000000fc4d5: mov %ax,%gs 0x00000000000fc4d7: ljmpl $0xc189,$0x18c4f4 0x00000000000fc4df: mov $0x30,%ax 0x00000000000fc4e2: add %al,(%bx,%si) 0x00000000000fc4e4: mov %ax,%ds 0x00000000000fc4e6: mov %ax,%es 0x00000000000fc4e8: mov %ax,%ss 0x00000000000fc4ea: mov %ax,%fs 0x00000000000fc4ec: mov %ax,%gs 0x00000000000fc4ee: ljmpl $0x200f,$0x28c4f4 0x00000000000fc4f6: shlb $0xe0,-0x7d(%bp) 0x00000000000fc4fa: decb (%bx) 0x00000000000fc4fc: and %al,%al 0x00000000000fc4fe: ljmp $0xf000,$0xc503 0x00000000000fc503: lidtw %cs:-0x2c18 0x00000000000fc509: xor %ax,%ax 0x00000000000fc50b: mov %ax,%fs 0x00000000000fc50d: mov %ax,%gs 0x00000000000fc50f: mov %ax,%es 0x00000000000fc511: mov %ax,%ds 0x00000000000fc513: mov %ax,%ss 0x00000000000fc515: mov %ecx,%eax 0x00000000000fc518: jmpl *%edx 0x00000000000fc51b: push %ebp 0x00000000000fc51d: push %eax 0x00000000000fc51f: pushl %es 0x00000000000fc521: push %cs 0x00000000000fc522: push $0xc566 0x00000000000fc525: addr32 pushw %es:0x24(%eax) 0x00000000000fc52a: addr32 pushl %es:0x20(%eax) 0x00000000000fc530: addr32 mov %es:0x4(%eax),%edi 0x00000000000fc536: addr32 mov %es:0x8(%eax),%esi 0x00000000000fc53c: addr32 mov %es:0xc(%eax),%ebp 0x00000000000fc542: addr32 mov %es:0x10(%eax),%ebx 0x00000000000fc548: addr32 mov %es:0x14(%eax),%edx 0x00000000000fc54e: addr32 mov %es:0x18(%eax),%ecx 0x00000000000fc554: addr32 mov %es:(%eax),%ds 0x00000000000fc558: addr32 pushl %es:0x1c(%eax) 0x00000000000fc55e: addr32 mov %es:0x2(%eax),%es 0x00000000000fc563: pop %eax 0x00000000000fc565: iret 0x00000000000fc566: pushf 0x00000000000fc567: cli
Quoted 27 lines · Paolo Bonzini
Quoted 10 lines
Paolo,
The full command line is:
qemu-system-x86_64 -machine accel=kvm -m 1024m \
-net tap -net nic \
-drive file=/dev/zpool/testsrv,index=0,cache=writethrough \
-k en-us \
-no-kvm-irqchip \
-vga cirrusQuoted 5 lines
I've tried any combinations of "-net" options, but the result is always the same. I think this somehow related to
http://article.gmane.org/gmane.comp.emulators.kvm.devel/109461, as setting "emulate_invalid_guest_state=0" solves the problem However, I'm not aware of any consequences of this change.Actually, the other bug involves sgabios and you are not using it. Please try executing the following commands from the monitor (you can use "-monitor stdio" to make cut-and-paste simpler):
x/8i \$pc x/64b \$pcand include the output in the reply to this message.
Thanks,
Paolo
Paolo Bonzini
maintainerIl 08/05/2013 14:25, Vladimir ha scritto:
Quoted 4 lines
Here they are:
(qemu) x/8i $pc
0x00000000000fc49b: lgdtw %cs:-0x2c60
Hi, this is the same problem as
http://article.gmane.org/gmane.comp.emulators.kvm.devel/109527 -- the fix is on its way to the next stable kernel.
Thanks for your patience!
Paolo