[prev in list] [next in list] [prev in thread] [next in thread]
List: kvm
Subject: Re: [RFC PATCH 15/17] kvm: add dynamic IRQ support
From: Avi Kivity <avi () redhat ! com>
Date: 2009-03-31 20:59:13
Message-ID: 49D28421.4020308 () redhat ! com
[Download RAW message or body]
Gregory Haskins wrote:
>> Won't this have scaling issues? One IRQ means one target vcpu.
>> Whereas I'd like virtio devices to span multiple queues, each queue
>> with its own MSI IRQ.
>>
> Hmm..you know I hadnt really thought of it that way, but you have a
> point. To clarify, my design actually uses one IRQ per "eventq", where
> we can have an arbitrary number of eventq's defined (note: today I only
> define one eventq, however). An eventq is actually a shm-ring construct
> where I can pass events up to the host like "device added" or "ring X
> signaled". Each individual device based virtio-ring would then
> aggregates "signal" events onto this eventq mechanism to actually inject
> events to the host. Only the eventq itself injects an actual IRQ to the
> assigned vcpu.
>
You will get get cachelines bounced around when events from different
devices are added to the queue. On the plus side, a single injection
can contain interrupts for multiple devices.
I'm not sure how useful this coalescing is; certainly you will never see
it on microbenchmarks, but that doesn't mean it's not useful.
--
I have a truly marvellous patch that fixes the bug which this
signature is too narrow to contain.
--
To unsubscribe from this list: send the line "unsubscribe kvm" in
the body of a message to majordomo@vger.kernel.org
More majordomo info at http://vger.kernel.org/majordomo-info.html
[prev in list] [next in list] [prev in thread] [next in thread]
Configure |
About |
News |
Add a list |
Sponsored by KoreLogic