From mboxrd@z Thu Jan 1 00:00:00 1970 From: Avi Kivity Subject: Re: [PATCH v3 1/3] Introduce a workqueue to deliver PIT timer interrupts. Date: Tue, 17 Apr 2012 19:17:11 +0300 Message-ID: <4F8D9787.3000804@redhat.com> References: <1276722673-19011-2-git-send-email-clalance@redhat.com> <4F8C49D6.9010603@siemens.com> <20120417093123.GB11918@redhat.com> <4F8D44B8.1000102@redhat.com> <20120417102601.GF11918@redhat.com> <4F8D45F0.4020908@redhat.com> <20120417103106.GG11918@redhat.com> <4F8D4917.5000703@redhat.com> <20120417110506.GJ11918@redhat.com> <4F8D5B4A.6070904@redhat.com> <20120417120340.GL11918@redhat.com> <4F8D5CBD.1070004@redhat.com> <4F8D9709.3020409@siemens.com> Mime-Version: 1.0 Content-Type: text/plain; charset=ISO-8859-1 Content-Transfer-Encoding: 7bit Cc: Gleb Natapov , "kvm@vger.kernel.org" , Marcelo Tosatti To: Jan Kiszka Return-path: Received: from mx1.redhat.com ([209.132.183.28]:4081 "EHLO mx1.redhat.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S932155Ab2DQQRQ (ORCPT ); Tue, 17 Apr 2012 12:17:16 -0400 In-Reply-To: <4F8D9709.3020409@siemens.com> Sender: kvm-owner@vger.kernel.org List-ID: On 04/17/2012 07:15 PM, Jan Kiszka wrote: > On 2012-04-17 14:06, Avi Kivity wrote: > > On 04/17/2012 03:03 PM, Gleb Natapov wrote: > >>> > >>> KVM_MAX_VCPUS. > >>> > >> Ah, so you are worried about malicious guest configuring pit to > >> broadcast to all its vcpus. > > > > Yes - it can introduce huge amounts of latency this way which is exactly > > what Jan is trying to prevent. > > > > Though I'm not sure spin_lock_irq() in the realtime tree actually > > disables irqs (but it's certainly not a good idea in mainline; it's > > nasty even with just the spinlock). > > This depends on how you declare the spin lock type - raw or normal. The > former will disable irqs, the latter not even preemption (but become a > mutex). Yes (and I see no reason to use raw spinlocks here). Still, for mainline, are we okay with 254*IPIs? Maybe it's not so bad and I'm overinflating the problem. -- error compiling committee.c: too many arguments to function