From mboxrd@z Thu Jan 1 00:00:00 1970 From: Jan Kiszka Subject: Re: [PATCH 03/15] kvm: Install optimized interrupt handlers Date: Mon, 07 Mar 2011 09:00:41 +0100 Message-ID: <4D7490A9.2080907@web.de> References: <29e857949ee4ff738c7c2f27063ee945a1af4875.1299233998.git.jan.kiszka@siemens.com> <20110305153759.GA2692@amt.cnet> <4D727CE9.8010107@web.de> <20110306021303.GA12222@amt.cnet> Mime-Version: 1.0 Content-Type: multipart/signed; micalg=pgp-sha1; protocol="application/pgp-signature"; boundary="------------enig92965161CD74639ED853D52C" Cc: Avi Kivity , kvm@vger.kernel.org, qemu-devel@nongnu.org To: Marcelo Tosatti Return-path: Received: from fmmailgate02.web.de ([217.72.192.227]:55102 "EHLO fmmailgate02.web.de" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1750972Ab1CGIBi (ORCPT ); Mon, 7 Mar 2011 03:01:38 -0500 In-Reply-To: <20110306021303.GA12222@amt.cnet> Sender: kvm-owner@vger.kernel.org List-ID: This is an OpenPGP/MIME signed message (RFC 2440 and 3156) --------------enig92965161CD74639ED853D52C Content-Type: text/plain; charset=ISO-8859-1 Content-Transfer-Encoding: quoted-printable On 2011-03-06 03:13, Marcelo Tosatti wrote: > On Sat, Mar 05, 2011 at 07:11:53PM +0100, Jan Kiszka wrote: >> On 2011-03-05 16:37, Marcelo Tosatti wrote: >>> On Fri, Mar 04, 2011 at 11:20:00AM +0100, Jan Kiszka wrote: >>>> KVM only requires to set the raised IRQ in CPUState and, if the user= >>>> space irqchip is used, to kick the receiving vcpu if it is remote. >>>> >>>> Signed-off-by: Jan Kiszka >>>> --- >>>> kvm-all.c | 17 +++++++++++++++++ >>>> 1 files changed, 17 insertions(+), 0 deletions(-) >>>> >>>> diff --git a/kvm-all.c b/kvm-all.c >>>> index 226843c..c460d45 100644 >>>> --- a/kvm-all.c >>>> +++ b/kvm-all.c >>>> @@ -650,6 +650,20 @@ static CPUPhysMemoryClient kvm_cpu_phys_memory_= client =3D { >>>> .log_stop =3D kvm_log_stop, >>>> }; >>>> =20 >>>> +static void kvm_handle_interrupt(CPUState *env, int mask) >>>> +{ >>>> + env->interrupt_request |=3D mask; >>>> + >>> >>> If the env->interrupt_request request is processed in userspace, such= as >>> MCE, the kick is still necessary for irqchip case. CPU_INTERRUPT_DEBU= G >>> is another example, no? >> >> [this probably targeted kvm_handle_interrupt_kernel_irqchip] >> >> In principle, you are right. But MCE must be injected synchronously ov= er >> the target VCPU, see do_inject_x86_mce, and CPU_INTERRUPT_DEBUG is als= o >> synchronous and not even used in KVM mode. >=20 > CPU_INTERRUPT_NMI from monitor? >=20 > Don't see what gain you expect from avoiding the signal in this case. Well, looking at this from a different angle again, I cannot identify my original optimization anymore. I guess I was under the wrong impression that cpu_interrupt is still a frequently used service even with in-kernel irqchip. But that's by far not the case. Will drop this. Jan --------------enig92965161CD74639ED853D52C Content-Type: application/pgp-signature; name="signature.asc" Content-Description: OpenPGP digital signature Content-Disposition: attachment; filename="signature.asc" -----BEGIN PGP SIGNATURE----- Version: GnuPG v2.0.15 (GNU/Linux) Comment: Using GnuPG with SUSE - http://enigmail.mozdev.org/ iEYEARECAAYFAk10kKkACgkQitSsb3rl5xTBoACgqoDrCj54bal/hhTXXMySUhN1 X+cAoOv+jr3bpgdFUTl+MbUQNgP/SgTl =NsLS -----END PGP SIGNATURE----- --------------enig92965161CD74639ED853D52C--