Bugs item #2962575, was opened at 2010-03-03 13:20 Message generated for change (Comment added) made by jessorensen You can respond by visiting: https://sourceforge.net/tracker/?func=detail&atid=893831&aid=2962575&group_id=180599 Please note that this message will contain a full copy of the comment thread, including the initial issue submission, for this request, not just the latest update. Category: intel Group: None >Status: Closed >Resolution: Works For Me Priority: 5 Private: No Submitted By: Erik van der Kouwe (erikvdk) Assigned to: Nobody/Anonymous (nobody) Summary: MINIX 3.1.6 works in QEMU-0.12.3 only with KVM disabled Initial Comment: Dear all, If one runs the following commands after installing qemu-0.12.3 or qemu-kvm-0.12.3: wget http://www.minix3.org/download/minix_R3.1.6-r6084.iso.bz2 bunzip2 minix_R3.1.6-r6084.iso.bz2 qemu-system-x86_64 -cdrom minix_R3.1.6-r6084.iso -enable-kvm and presses 1 (Regular MINIX 3), the following error message results when loading MINIX: kvm: unhandled exit 80000021 kvm_run returned -22 The guest stops after that. This error message does not occur without the -enable-kvm switch. It does not occur with qemu-kvm-0.11.0 as bundled with Ubuntu. The problem occurs with the "qemu" binary from qemu-0.12.3 as well as "qemu-system-x86_64" from qemu-kvm-0.12.3, but in the former case no error message is printed. The code that is running when it fails is in https://gforge.cs.vu.nl/gf/project/minix/scmsvn/?action=browse&path=%2Ftrunk%2Fsrc%2Fboot%2Fboothead.s&revision=5918&view=markup. It happens in ext_copy: ext_copy: mov x_dst_desc+2, ax movb x_dst_desc+4, dl ! Set base of destination segment mov ax, 8(bp) mov dx, 10(bp) mov x_src_desc+2, ax movb x_src_desc+4, dl ! Set base of source segment mov si, #x_gdt ! es:si = global descriptor table shr cx, #1 ! Words to move movb ah, #0x87 ! Code for extended memory move int 0x15 The line that fails is "int 0x15", which performs a BIOS call to copy data from low memory to above the 1MB barrier. The machine is running in 16-bit real mode when this code is executed. Output for "uname -a" on the host: Linux hp364 2.6.31-20-generic #57-Ubuntu SMP Mon Feb 8 09:05:19 UTC 2010 i686 GNU/Linux Output for "cat /proc/cpuinfo" on the host: processor : 0 vendor_id : GenuineIntel cpu family : 6 model : 23 model name : Intel(R) Core(TM)2 Duo CPU E8600 @ 3.33GHz stepping : 10 cpu MHz : 1998.000 cache size : 6144 KB physical id : 0 siblings : 2 core id : 0 cpu cores : 2 apicid : 0 initial apicid : 0 fdiv_bug : no hlt_bug : no f00f_bug : no coma_bug : no fpu : yes fpu_exception : yes cpuid level : 13 wp : yes flags : fpu vme de pse tsc msr pae mce cx8 apic mtrr pge mca cmov pat pse36 clflush dts acpi mmx fxsr sse sse2 ss ht tm pbe nx lm constant_tsc arch_perfmon pebs bts pni dtes64 monitor ds_cpl vmx smx est tm2 ssse3 cx16 xtpr pdcm sse4_1 xsave lahf_lm tpr_shadow vnmi flexpriority bogomips : 6650.50 clflush size : 64 power management: processor : 1 vendor_id : GenuineIntel cpu family : 6 model : 23 model name : Intel(R) Core(TM)2 Duo CPU E8600 @ 3.33GHz stepping : 10 cpu MHz : 1998.000 cache size : 6144 KB physical id : 0 siblings : 2 core id : 1 cpu cores : 2 apicid : 1 initial apicid : 1 fdiv_bug : no hlt_bug : no f00f_bug : no coma_bug : no fpu : yes fpu_exception : yes cpuid level : 13 wp : yes flags : fpu vme de pse tsc msr pae mce cx8 apic mtrr pge mca cmov pat pse36 clflush dts acpi mmx fxsr sse sse2 ss ht tm pbe nx lm constant_tsc arch_perfmon pebs bts pni dtes64 monitor ds_cpl vmx smx est tm2 ssse3 cx16 xtpr pdcm sse4_1 xsave lahf_lm tpr_shadow vnmi flexpriority bogomips : 6649.80 clflush size : 64 power management: With kind regards, Erik ---------------------------------------------------------------------- >Comment By: Jes Sorensen (jessorensen) Date: 2011-03-03 12:46 Message: Checked exact command and works fine with current QEMU on a Fedora 14 system. Looks to be fixed, so closing. ---------------------------------------------------------------------- Comment By: Erik van der Kouwe (erikvdk) Date: 2010-03-10 15:16 Message: Thanks to Avi Kivity I now have a workaround for this issue, namely 16-byte align the addresses in the GDT passed to the BIOS extended copy function. The BIOS left the unaligned descriptor causing MINIX to operate in unreal mode, which is not well supported by KVM on Intel. ---------------------------------------------------------------------- You can respond by visiting: https://sourceforge.net/tracker/?func=detail&atid=893831&aid=2962575&group_id=180599 -- To unsubscribe from this list: send the line "unsubscribe kvm" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html