Am 22.03.2009 schrieb Avi Kivity: > Avi Kivity wrote: > > > > The code in question is: > > > > 3152: fb sti 3153: > > 55 push %bp > > > > *** fault here *** > > > > 3154: 89 e5 mov %sp,%bp > > 3156: 8b 7e 2a mov 0x2a(%bp),%di > > 3159: 8b 46 28 mov 0x28(%bp),%ax > > 315c: 8b 4e 08 mov 0x8(%bp),%cx > > 315f: 81 ff 00 f8 cmp $0xf800,%di > > > > So it looks like we tried to inject the IDE interrupt (that's the > > first point where it is possible to inject interrupts), but via fails > > to inject the interrupt for some reason. > > > > I'll need to think how to debug this further. > > > > Please printk (as hex) vmcs_read32(VM_ENTRY_INTR_INFO_FIELD) in > vmx_vcpu_run(), just before the big asm statement. > > I don't know if this could influence something in kvm - now i got gcc-4.3.3 running.... gcc -v : Using built-in specs. Target: x86_64-pc-linux-gnu Configured with: /dev/shm/portage/sys-devel/gcc-4.3.3/work/gcc-4.3.3/configure --prefix=/usr --bindir=/usr/x86_64-pc-linux-gnu/gcc-bin/4.3.3 --includedir=/usr/lib/gcc/x86_64-pc-linux-gnu/4.3.3/include --datadir=/usr/share/gcc-data/x86_64-pc-linux-gnu/4.3.3 --mandir=/usr/share/gcc-data/x86_64-pc-linux-gnu/4.3.3/man --infodir=/usr/share/gcc-data/x86_64-pc-linux-gnu/4.3.3/info --with-gxx-include-dir=/usr/lib/gcc/x86_64-pc-linux-gnu/4.3.3/include/g++-v4 --host=x86_64-pc-linux-gnu --build=x86_64-pc-linux-gnu --disable-altivec --disable-fixed-point --enable-nls --without-included-gettext --with-system-zlib --disable-checking --disable-werror --enable-secureplt --enable-multilib --enable-libmudflap --disable-libssp --enable-libgomp --enable-cld --disable-libgcj --enable-languages=c,c++,treelang,fortran --enable-shared --enable-threads=posix --enable-__cxa_atexit --enable-clocale=gnu --with-bugurl=http://bugs.gentoo.org/ --with-pkgversion='Gentoo 4.3.3 p1.0, pie-10.1.5' Thread model: posix gcc version 4.3.3 (Gentoo 4.3.3 p1.0, pie-10.1.5) vmx.c: 3473 static void vmx_vcpu_run(struct kvm_vcpu *vcpu, struct kvm_run *kvm_run) 3474 { ... 3500 3501 printk(KERN_INFO "vmx->vmx_vcpu_run() 00 : vmcs_read32(VM_ENTRY_INTR_INFO_FIELD) returned 0x%x\n",vmcs_read32(VM_ENTRY_INTR_INFO_FIELD)); 3502 3503 asm( .... dmesg: Mar 23 14:27:35 [kernel] [ 5252.775955] vmx->vmx_vcpu_run() 00 : vmcs_read32(VM_ENTRY_INTR_INFO_FIELD) returned 0x8000040d Mar 23 14:27:35 [kernel] [ 5252.775967] vmx->handle_exception 00 : giving some infos Mar 23 14:27:35 [kernel] [ 5252.775972] vmx->handle_exception 01 : vect_info: 0x0 Mar 23 14:27:35 [kernel] [ 5252.775978] vmx->handle_exception 02 : intr_info: 0x80000b0d, is_page_fault()==0 Mar 23 14:27:35 [kernel] [ 5252.775984] vmx->handle_exception 03 : irq_chip_in_kernel()==1 Mar 23 14:27:35 [kernel] [ 5252.775989] vmx->handle_exception 04 : is_external_interrupt()==0 Mar 23 14:27:35 [kernel] [ 5252.775995] vmx->handle_exception 0a : kvm_rip_read(vcpu) returned 0x3154 Mar 23 14:27:35 [kernel] [ 5252.776000] vmx->handle_exception 0f : vcpu->arch.rmode.active: 0x1 Mar 23 14:27:35 [kernel] [ 5252.776015] vmx->handle_exception 10 : handle_rmode_exception(vcpu, intr_info & INTR_INFO_VECTOR_MASK, error_code) returned 0x1 Mar 23 14:27:35 [kernel] [ 5252.775769] vmx->handle_exception 01 : vect_info: 0x0 Mar 23 14:27:35 [kernel] [ 5252.775774] vmx->handle_exception 02 : intr_info: 0x80000b0d, is_page_fault()==0 Mar 23 14:27:35 [kernel] [ 5252.775780] vmx->handle_exception 03 : irq_chip_in_kernel()==1 Mar 23 14:27:35 [kernel] [ 5252.775785] vmx->handle_exception 04 : is_external_interrupt()==0 Mar 23 14:27:35 [kernel] [ 5252.775791] vmx->handle_exception 0a : kvm_rip_read(vcpu) returned 0x3154 Mar 23 14:27:35 [kernel] [ 5252.775797] vmx->handle_exception 0f : vcpu->arch.rmode.active: 0x1 Mar 23 14:27:35 [kernel] [ 5252.775803] vmx->handle_exception 10 : handle_rmode_exception(vcpu, intr_info & INTR_INFO_VECTOR_MASK, error_code) returned 0x1 Mar 23 14:27:35 [kernel] [ 5252.775819] vmx->vmx_vcpu_run() 00 : vmcs_read32(VM_ENTRY_INTR_INFO_FIELD) returned 0x8000040d Mar 23 14:27:35 [kernel] [ 5252.775832] vmx->handle_exception 00 : giving some infos Mar 23 14:27:35 [kernel] [ 5252.775837] vmx->handle_exception 01 : vect_info: 0x0 Mar 23 14:27:35 [kernel] [ 5252.775842] vmx->handle_exception 02 : intr_info: 0x80000b0d, is_page_fault()==0 Mar 23 14:27:35 [kernel] [ 5252.775848] vmx->handle_exception 03 : irq_chip_in_kernel()==1 Mar 23 14:27:35 [kernel] [ 5252.775853] vmx->handle_exception 04 : is_external_interrupt()==0 Mar 23 14:27:35 [kernel] [ 5252.775859] vmx->handle_exception 0a : kvm_rip_read(vcpu) returned 0x3154 Mar 23 14:27:35 [kernel] [ 5252.775865] vmx->handle_exception 0f : vcpu->arch.rmode.active: 0x1 Mar 23 14:27:35 [kernel] [ 5252.775871] vmx->handle_exception 10 : handle_rmode_exception(vcpu, intr_info & INTR_INFO_VECTOR_MASK, error_code) returned 0x1 Mar 23 14:27:35 [kernel] [ 5252.775887] vmx->vmx_vcpu_run() 00 : vmcs_read32(VM_ENTRY_INTR_INFO_FIELD) returned 0x8000040d Mar 23 14:27:35 [kernel] [ 5252.775910] vmx->handle_exception 02 : intr_info: 0x80000b0d, is_page_fault()==0 Mar 23 14:27:35 [kernel] [ 5252.775916] vmx->handle_exception 03 : irq_chip_in_kernel()==1 Mar 23 14:27:35 [kernel] [ 5252.775921] vmx->handle_exception 04 : is_external_interrupt()==0 Mar 23 14:27:35 [kernel] [ 5252.775927] vmx->handle_exception 0a : kvm_rip_read(vcpu) returned 0x3154 Mar 23 14:27:35 [kernel] [ 5252.775933] vmx->handle_exception 0f : vcpu->arch.rmode.active: 0x1 Mar 23 14:27:35 [kernel] [ 5252.775939] vmx->handle_exception 10 : handle_rmode_exception(vcpu, intr_info & INTR_INFO_VECTOR_MASK, error_code) returned 0x1 Mar 23 14:27:35 [kernel] [ 5252.775955] vmx->vmx_vcpu_run() 00 : vmcs_read32(VM_ENTRY_INTR_INFO_FIELD) returned 0x8000040d Mar 23 14:27:35 [kernel] [ 5252.775967] vmx->handle_exception 00 : giving some infos Mar 23 14:27:35 [kernel] [ 5252.775972] vmx->handle_exception 01 : vect_info: 0x0 Mar 23 14:27:35 [kernel] [ 5252.775978] vmx->handle_exception 02 : intr_info: 0x80000b0d, is_page_fault()==0 Mar 23 14:27:35 [kernel] [ 5252.775984] vmx->handle_exception 03 : irq_chip_in_kernel()==1 Mar 23 14:27:35 [kernel] [ 5252.775989] vmx->handle_exception 04 : is_external_interrupt()==0 Mar 23 14:27:35 [kernel] [ 5252.775995] vmx->handle_exception 0a : kvm_rip_read(vcpu) returned 0x3154 Mar 23 14:27:35 [kernel] [ 5252.776000] vmx->handle_exception 0f : vcpu->arch.rmode.active: 0x1 Mar 23 14:27:35 [kernel] [ 5252.776015] vmx->handle_exception 10 : handle_rmode_exception(vcpu, intr_info & INTR_INFO_VECTOR_MASK, error_code) returned 0x1 Mar 23 14:27:35 [kernel] [ 5252.775769] vmx->handle_exception 01 : vect_info: 0x0 Mar 23 14:27:35 [kernel] [ 5252.775774] vmx->handle_exception 02 : intr_info: 0x80000b0d, is_page_fault()==0 Mar 23 14:27:35 [kernel] [ 5252.775780] vmx->handle_exception 03 : irq_chip_in_kernel()==1 Mar 23 14:27:35 [kernel] [ 5252.775785] vmx->handle_exception 04 : is_external_interrupt()==0 Mar 23 14:27:35 [kernel] [ 5252.775791] vmx->handle_exception 0a : kvm_rip_read(vcpu) returned 0x3154 Mar 23 14:27:35 [kernel] [ 5252.775797] vmx->handle_exception 0f : vcpu->arch.rmode.active: 0x1 Mar 23 14:27:35 [kernel] [ 5252.775803] vmx->handle_exception 10 : handle_rmode_exception(vcpu, intr_info & INTR_INFO_VECTOR_MASK, error_code) returned 0x1 Mar 23 14:27:35 [kernel] [ 5252.775819] vmx->vmx_vcpu_run() 00 : vmcs_read32(VM_ENTRY_INTR_INFO_FIELD) returned 0x8000040d Mar 23 14:27:35 [kernel] [ 5252.775832] vmx->handle_exception 00 : giving some infos Mar 23 14:27:35 [kernel] [ 5252.775837] vmx->handle_exception 01 : vect_info: 0x0 Mar 23 14:27:35 [kernel] [ 5252.775842] vmx->handle_exception 02 : intr_info: 0x80000b0d, is_page_fault()==0 Mar 23 14:27:35 [kernel] [ 5252.775848] vmx->handle_exception 03 : irq_chip_in_kernel()==1 Mar 23 14:27:35 [kernel] [ 5252.775853] vmx->handle_exception 04 : is_external_interrupt()==0 Mar 23 14:27:35 [kernel] [ 5252.775859] vmx->handle_exception 0a : kvm_rip_read(vcpu) returned 0x3154 Mar 23 14:27:35 [kernel] [ 5252.775865] vmx->handle_exception 0f : vcpu->arch.rmode.active: 0x1 Mar 23 14:27:35 [kernel] [ 5252.775871] vmx->handle_exception 10 : handle_rmode_exception(vcpu, intr_info & INTR_INFO_VECTOR_MASK, error_code) returned 0x1 Mar 23 14:27:35 [kernel] [ 5252.775887] vmx->vmx_vcpu_run() 00 : vmcs_read32(VM_ENTRY_INTR_INFO_FIELD) returned 0x8000040d Mar 23 14:27:35 [kernel] [ 5252.775910] vmx->handle_exception 02 : intr_info: 0x80000b0d, is_page_fault()==0 Mar 23 14:27:35 [kernel] [ 5252.775916] vmx->handle_exception 03 : irq_chip_in_kernel()==1 Mar 23 14:27:35 [kernel] [ 5252.775921] vmx->handle_exception 04 : is_external_interrupt()==0 Mar 23 14:27:35 [kernel] [ 5252.775927] vmx->handle_exception 0a : kvm_rip_read(vcpu) returned 0x3154 Mar 23 14:27:35 [kernel] [ 5252.775933] vmx->handle_exception 0f : vcpu->arch.rmode.active: 0x1 Mar 23 14:27:35 [kernel] [ 5252.775939] vmx->handle_exception 10 : handle_rmode_exception(vcpu, intr_info & INTR_INFO_VECTOR_MASK, error_code) returned 0x1 Mar 23 14:27:35 [kernel] [ 5252.775955] vmx->vmx_vcpu_run() 00 : vmcs_read32(VM_ENTRY_INTR_INFO_FIELD) returned 0x8000040d Mar 23 14:27:35 [kernel] [ 5252.775967] vmx->handle_exception 00 : giving some infos Mar 23 14:27:35 [kernel] [ 5252.775972] vmx->handle_exception 01 : vect_info: 0x0 Mar 23 14:27:35 [kernel] [ 5252.775978] vmx->handle_exception 02 : intr_info: 0x80000b0d, is_page_fault()==0 Mar 23 14:27:35 [kernel] [ 5252.775984] vmx->handle_exception 03 : irq_chip_in_kernel()==1 Mar 23 14:27:35 [kernel] [ 5252.775989] vmx->handle_exception 04 : is_external_interrupt()==0 Mar 23 14:27:35 [kernel] [ 5252.775995] vmx->handle_exception 0a : kvm_rip_read(vcpu) returned 0x3154 Mar 23 14:27:35 [kernel] [ 5252.776000] vmx->handle_exception 0f : vcpu->arch.rmode.active: 0x1 Mar 23 14:27:35 [kernel] [ 5252.776015] vmx->handle_exception 10 : handle_rmode_exception(vcpu, intr_info & INTR_INFO_VECTOR_MASK, error_code) returned 0x1 -- 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