On Tue, Apr 17, 2012 at 03:00:10PM +0300, Avi Kivity wrote: > On 04/17/2012 02:05 PM, Gleb Natapov wrote: > > On Tue, Apr 17, 2012 at 01:42:31PM +0300, Avi Kivity wrote: > > > On 04/17/2012 01:31 PM, Gleb Natapov wrote: > > > > On Tue, Apr 17, 2012 at 01:29:04PM +0300, Avi Kivity wrote: > > > > > On 04/17/2012 01:26 PM, Gleb Natapov wrote: > > > > > > > It isn't, since you need to send an IPI. > > > > > > > > > > > > > That is exactly what I forget whether you can send IPI from there :) > > > > > > Anyway this is another reason. > > > > > > > > > > > > > > > > Actually I was wrong. You can't smp_call_function_single() from irq > > > > > context (deadlocks if two vcpus do that), but we send a reschedule > > > > > interrupt. So it should work. > > > > > > > > > Ah, good point. So if we'll use irqsave versions of spinlocks we can > > > > drop kthread? > > > > > > Do we want 254 IPIs to be issued from irq context? Could be slow. > > > > > Where this number is coming from? > > KVM_MAX_VCPUS. > Ah, so you are worried about malicious guest configuring pit to broadcast to all its vcpus. > > > We can make the unicast case run from irq context and defer the > > > multicast to a thread. > > > > > We do not know if gsi is multicasted in the pit code though. > > > > We don't have to do it in the pit code. The .set method can decide > whether it wants a direct path or go through a thread (which thread? > passed as a parameter?) > Agree. -- Gleb. -- 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