On Mon, Oct 12, 2009 at 10:39:09AM +0200, Avi Kivity wrote: > On 10/12/2009 09:50 AM, Jan Kiszka wrote: > >>Apic is lockless. For ioapic/pic I used spinlocks initially, but Avi > >>prefers mutexes. Theoretically it is possible to make them lockless, > >>but code will be complex and eventually more slow, since more then two > >>atomic operation will be used on irq injection path. > >Well, lockless is another thing. > > > >But also converting to spinlocks would indeed add some overhead: > >irqsave/restore. But I wonder if this isn't worth it, at least when > >looking at the (supposed to be fast) device passthrough scenario which > >would be simpler and faster. > > I'm worried about disabling irqs for non-device-assignment cases. > It would be more palatable if ioapic was completely O(1) (there are > some per-vcpu loops in there, shouldn't be too bad for 16 vcpus, but > we want to scale). > We can change it to hash for directed irqs (still not O(1)), but for broadcast irq the loop will be required. -- 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