From mboxrd@z Thu Jan 1 00:00:00 1970 From: Avi Kivity Subject: Re: KVM on Via Nano (Isaiah) CPUs? Date: Thu, 19 Mar 2009 14:25:20 +0200 Message-ID: <49C239B0.8060005@redhat.com> References: <200903180902.29139.andreas.tanz@kvt.de> <200903181810.48603.andreas.tanz@kvt.de> <49C20DEE.9040302@redhat.com> <200903191155.06122.andreas.tanz@kvt.de> Mime-Version: 1.0 Content-Type: text/plain; charset=UTF-8; format=flowed Content-Transfer-Encoding: 7bit Cc: kvm@vger.kernel.org To: andreas.tanz@kvt.de Return-path: Received: from mx2.redhat.com ([66.187.237.31]:34643 "EHLO mx2.redhat.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1750854AbZCSMZ0 (ORCPT ); Thu, 19 Mar 2009 08:25:26 -0400 In-Reply-To: <200903191155.06122.andreas.tanz@kvt.de> Sender: kvm-owner@vger.kernel.org List-ID: Andreas Tanz wrote: > Hi! > > >>> The guest starts up showing the Bochs BIOS POST and stucks giving thousands of lines : >>> [15013.656923] returning from kvm_handle_exit, cause 3, retval = 1 >>> >>> >>> >> What was the value of exit_reason? >> >> > kernel/x86/vmx.c: > 3211 static int kvm_handle_exit(struct kvm_run *kvm_run, struct kvm_vcpu *vcpu) > 3212 { > ... > 3273 if (exit_reason < kvm_vmx_max_exit_handlers > 3274 && kvm_vmx_exit_handlers[exit_reason]){ > 3275 int retval = kvm_vmx_exit_handlers[exit_reason](vcpu, kvm_run); > 3276 printk(KERN_WARNING "returning from kvm_handle_exit, cause 3, retval = %i" > 3277 ", exit_reason = %i\n" > 3278 ,retval, exit_reason); > 3279 // return kvm_vmx_exit_handlers[exit_reason](vcpu, kvm_run); > 3280 return retval; > 3281 } > 3282 else { > 3283 kvm_run->exit_reason = KVM_EXIT_UNKNOWN; > 3284 kvm_run->hw.hardware_exit_reason = exit_reason; > 3285 } > 3286 printk(KERN_WARNING "returning from kvm_handle_exit\n > 3287 return 0; > 3288 } > ... > > --> dmesg : > [79116.175571] returning from kvm_handle_exit, cause 3, retval = 1, exit_reason = 0 > That's an exception or nmi. Next step is to instrument handle_exception() and see what happens there. Please print out vect_info, intr_info, and kvm_rip_read(vcpu) (all as hex). The more you instrument, of course, the better. -- error compiling committee.c: too many arguments to function