From mboxrd@z Thu Jan 1 00:00:00 1970 From: Christoffer Dall Subject: Re: arm: warning at virt/kvm/arm/vgic.c:1468 Date: Thu, 12 Feb 2015 20:46:13 -0800 Message-ID: <20150213044613.GA47577@lvm> References: <54D714B9.6090106@web.de> Mime-Version: 1.0 Content-Type: multipart/signed; micalg=pgp-sha1; protocol="application/pgp-signature"; boundary="0F1p//8PRICkK4MW" Cc: kvm , kvmarm , Marc Zyngier To: Jan Kiszka Return-path: Received: from mail-pd0-f179.google.com ([209.85.192.179]:41610 "EHLO mail-pd0-f179.google.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1751432AbbBMEqW (ORCPT ); Thu, 12 Feb 2015 23:46:22 -0500 Received: by pdno5 with SMTP id o5so16818732pdn.8 for ; Thu, 12 Feb 2015 20:46:21 -0800 (PST) Content-Disposition: inline In-Reply-To: <54D714B9.6090106@web.de> Sender: kvm-owner@vger.kernel.org List-ID: --0F1p//8PRICkK4MW Content-Type: text/plain; charset=us-ascii Content-Disposition: inline Content-Transfer-Encoding: quoted-printable Hi Jan, On Sun, Feb 08, 2015 at 08:48:09AM +0100, Jan Kiszka wrote: > Hi, >=20 > after fixing the VM_BUG_ON, my QEMU guest on the Jetson TK1 generally > refuses to boot. Once in a while it does, but quickly gets stuck again. > In one case I found this in the kernel log (never happened again so > far): >=20 > [ 762.022874] WARNING: CPU: 1 PID: 972 at ../arch/arm/kvm/../../../virt/= kvm/arm/vgic.c:1468 kvm_vgic_sync_hwstate+0x314/0x344() > [ 762.022884] Modules linked in: > [ 762.022902] CPU: 1 PID: 972 Comm: qemu-system-arm Not tainted 3.19.0-r= c7-00221-gfd7a168-dirty #13 > [ 762.022911] Hardware name: NVIDIA Tegra SoC (Flattened Device Tree) > [ 762.022937] [] (unwind_backtrace) from [] (show_st= ack+0x10/0x14) > [ 762.022958] [] (show_stack) from [] (dump_stack+0x= 98/0xd8) > [ 762.022976] [] (dump_stack) from [] (warn_slowpath= _common+0x80/0xb0) > [ 762.022991] [] (warn_slowpath_common) from [] (war= n_slowpath_null+0x1c/0x24) > [ 762.023007] [] (warn_slowpath_null) from [] (kvm_v= gic_sync_hwstate+0x314/0x344) > [ 762.023024] [] (kvm_vgic_sync_hwstate) from [] (kv= m_arch_vcpu_ioctl_run+0x210/0x400) > [ 762.023041] [] (kvm_arch_vcpu_ioctl_run) from [] (= kvm_vcpu_ioctl+0x2e4/0x6ec) > [ 762.023059] [] (kvm_vcpu_ioctl) from [] (do_vfs_io= ctl+0x40c/0x600) > [ 762.023076] [] (do_vfs_ioctl) from [] (SyS_ioctl+0= x34/0x5c) > [ 762.023091] [] (SyS_ioctl) from [] (ret_fast_sysca= ll+0x0/0x34) so this means your guest caused a maintenance interrupt and the bit is set in the GICH_EISR for the LR in question but the link register state is not 0, which is in direct violation of the GIC spec. Hmmmm. You're not doing any IRQ forwarding stuff or device passthrough here are you? >=20 >=20 > BTW, KVM tracing support on ARM seems like it requires some care. E.g.: > kvm_exit does not report an exit reason. The in-kernel vgic also seems > to lack instrumentation. Unfortunate. Tracing is usually the first stop > when KVM is stuck on a guest. I know, the exit reason is on my todo list, and Alex B is sitting on trace patches for the gic. Coming soon to a git repo near your. -Christoffer --0F1p//8PRICkK4MW Content-Type: application/pgp-signature; name="signature.asc" Content-Description: Digital signature -----BEGIN PGP SIGNATURE----- Version: GnuPG v1 iQEcBAEBAgAGBQJU3YGUAAoJEEtpOizt6ddy65YH/jNs+IhysmAfA1lgNgy3RI2u NLOYBL0zO8rHGUCtPcMpsXIifAeLD8FK5pi5JNiG3lEFGHT2ZjL0LD+H214/TxMK hXdX3AnEGAAee9vtYOOjwo2pphZwYwYs6g5UHtpHz7pLuEvZ6zBGkxW0vY2baKRx 5lT7r8iwPEi2a+VZnEW9k4+n3/pu5aoUm7BYY/HE3vcfG1vbccGMMNE8TCverxGs zyQ7mtBtVGM3kcB/Z1VAKKFwZwpAUQPbpgjZz73OePk0Jp2B8YM0mplaSQtYwoWJ 46beV04k1UviduQxbmY6HTiHtC76wQokM/N0rAP0zqVfq1ai0sfKMhLO00iZcHc= =f7Qi -----END PGP SIGNATURE----- --0F1p//8PRICkK4MW--