This is an archived copy of the Xen.org mailing list, which we have preserved to ensure that existing links to archives are not broken. The live archive, which contains the latest emails, can be found at http://lists.xen.org/
Home Products Support Community News


Re: [Xen-devel] trigger an interrupt in HVM

To: James Harper <james.harper@xxxxxxxxxxxxxxxx>, <xen-devel@xxxxxxxxxxxxxxxxxxx>
Subject: Re: [Xen-devel] trigger an interrupt in HVM
From: Keir Fraser <keir.fraser@xxxxxxxxxxxxx>
Date: Tue, 26 Aug 2008 08:10:31 +0100
Delivery-date: Tue, 26 Aug 2008 00:10:53 -0700
Envelope-to: www-data@xxxxxxxxxxxxxxxxxxx
In-reply-to: <AEC6C66638C05B468B556EA548C1A77D0149041F@trantor>
List-help: <mailto:xen-devel-request@lists.xensource.com?subject=help>
List-id: Xen developer discussion <xen-devel.lists.xensource.com>
List-post: <mailto:xen-devel@lists.xensource.com>
List-subscribe: <http://lists.xensource.com/mailman/listinfo/xen-devel>, <mailto:xen-devel-request@lists.xensource.com?subject=subscribe>
List-unsubscribe: <http://lists.xensource.com/mailman/listinfo/xen-devel>, <mailto:xen-devel-request@lists.xensource.com?subject=unsubscribe>
Sender: xen-devel-bounces@xxxxxxxxxxxxxxxxxxx
Thread-index: AckDI/dJ8Vz6w8p3QGimRDvwpEL7eQAPas71APFnyeAACORn6Q==
Thread-topic: [Xen-devel] trigger an interrupt in HVM
User-agent: Microsoft-Entourage/
On 26/8/08 04:19, "James Harper" <james.harper@xxxxxxxxxxxxxxxx> wrote:

>> If you must be able to trigger event delivery via the HVM IRQ
> mechanism
>> from
>> within your HVM guest then I suggest you allocate an IPI event channel
> and
>> do a notify hypercall on that. That will have the side effect of
>> triggering
>> an interrupt and 'flushing through' all other pending events.
> That doesn't seem to work... I allocate the IPI event channel which in
> my case gives me event channel 7, but a notify on port 7 doesn't appear
> to end up calling the IRQ... or if it does, it doesn't set the bits for
> that port.

You did request to bind the IPI port to vcpu0? Otherwise it won't work.

Also you will need to handle that port in your IRQ handler somehow (at least
the event selector bit and the event pending bit). Otherwise the IPI will
obviously only fire once.

 -- Keir

Xen-devel mailing list