[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [Xen-devel] At what places is an event handler called besides a hypercall?

  • To: Keir Fraser <keir.fraser@xxxxxxxxxxxxx>
  • From: Shu Wu <superwushu@xxxxxxxxx>
  • Date: Fri, 23 Oct 2009 09:55:09 +0800
  • Cc: "xen-devel@xxxxxxxxxxxxxxxxxxx" <xen-devel@xxxxxxxxxxxxxxxxxxx>
  • Delivery-date: Thu, 22 Oct 2009 18:55:33 -0700
  • Domainkey-signature: a=rsa-sha1; c=nofws; d=gmail.com; s=gamma; h=mime-version:in-reply-to:references:date:message-id:subject:from:to :cc:content-type; b=WC4fYTgzCv+P2cpTqVPPnUAPUKDBSRcyn31W5GSGKZHEYpgK7JfMkhbeaJVwrWM7Z6 KJVUJNfRXZFU7v1+a3rTghdkBDdDagexc9WRaEZTdnSO5XOLRS+1nPdys5c925MaNJ46 FFOlTdGNEWbX3ZM+MYlSXSWMbcxRGUrwKtpZo=
  • List-id: Xen developer discussion <xen-devel.lists.xensource.com>

Yeah, I see it! Especially in the exception handler there is a call to test_all_events, which checks the event and calls the handler. All these will happen frequently. Thanks a lot!

2009/10/22 Keir Fraser <keir.fraser@xxxxxxxxxxxxx>
On 22/10/2009 08:34, "Shu Wu" <superwushu@xxxxxxxxx> wrote:

> Hi, folks. I'm puzzled when the event handler is called in xen. I've only
> found a pending check and an upcall at the end of each hypercall. And an event
> delivery will cause a schedule, but no calling to the handler. So it seems
> when a domain sends a event to the other, the handler of that domain won't be
> called until it makes a hypercall or check it itself. That sounds not so
> reasonable. Could anyone tell me the truth? Thanks!

Events are checked for on any return to guest context. If the event sender
sees the receiver is running on another CPU, it sends an IPI, and on return
to guest context from that IPI the receiving CPU will deliver the event to
the receiving guest.

 -- Keir

Xen-devel mailing list



Lists.xenproject.org is hosted with RackSpace, monitoring our
servers 24x7x365 and backed by RackSpace's Fanatical Support®.