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

[Xen-devel] Frontend/Backend model

  • To: xen-devel@xxxxxxxxxxxxxxxxxxx
  • From: "David Shwatrz" <dshwatrz@xxxxxxxxx>
  • Date: Sat, 17 Mar 2007 21:15:31 +0200
  • Delivery-date: Sat, 17 Mar 2007 12:14:28 -0700
  • Domainkey-signature: a=rsa-sha1; c=nofws; d=gmail.com; s=beta; h=received:message-id:date:from:to:subject:mime-version:content-type; b=aV8jrxBiYtpky62ctnbvz35NJphUVP7DNJXu3Ix1iDWxUm68doYwUjaiIxMWTFClD5gi6xWwzdtlN5YysSZw5YYJK3/GTOFVYJg2NG33Vch+wglKtJsyPii9ursu7h1c4tt3oGvchn9FH9W1k1zyowtipOI7L0hmFbzvMtC+cms=
  • List-id: Xen developer discussion <xen-devel.lists.xensource.com>

A question about frontend/backend model:

I had looked in the code of netfront (and blockfront) and I wonder
: do these modules operate in soft_irq or interrupt context?
For exmaple, methods like network_start_xmit() (for trasmitting frames
in nerfront ) or network_tx_buf_gc() (for receiving frames in netfront) ?
I see that the netif_int() calls network_tx_buf_gc(). But is domU
network_tx_buf_gc() method called from a regular interrupt context
(like in the ususal case, when we deal with ordinary
drivers) ? Am I permitted to call a method that may sleep in these
methods ? As I understood, interrrupt handling in Xen is different, because interrupts are
handled by domain 0, and as I understood there are events channels and pending
events, and the interrupts are in fact handled first by domain 0, which activates
some event channel messages.
I want to verify this point for better understanding the frontend/backend model.

D Shwatrz

Xen-devel mailing list



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