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

Re: [Xen-devel] Questions about device/event channels in Xen.

On Thu, 2007-03-15 at 15:15 -0700, Liang Yang wrote:
> Hello,
> I just have several questions about device and event channel:
> 1. From the implementation point of view, are device and event channel the 
> same (i.e. both based on shared memory)?
> 2. In Xen papers, it is said up to 1024 channels are supported per domain. 
> Does 1024 include both device channel and event channel?

actually it depends on the architecture. on 64-bit-systems it's 4096.
there's a page of memory every domain shares with xen. this specific
limitation is due to the length of a bitvector where every event channel
marked pending sets a unique bit to 1, according to its port number (you
may think of this as a 'channel number', but actually the number depends
on who's holding the endpoint, similar to TCP/UDP connections. two
numbers connecting two domains by one channel).

the length of the bitvector in turn is more or less fixed, due to the
way it is indexed to speed up searches a little. when interrupted,
domains receiving events search the vector in order to determine which
device sent the notification.

> 3. Are these device/event channels allocated dynamically or statically for 
> each domain?

the channel itself is allocated dynamically. it's actually the port
numbers per domain being limited. but that is not much space.

> 4. It seems I need to allocate one device channel per device, is this true?

yes, as mark correctly explained. equivalent to the way different
interrupt lines in a physical host would be assigned to different
devices. one *may* share them, but it's tedious, and event channels are
cheaper than actual wire. :)

note: correctly termed, there's no such thing as a 'device channel'.
there are 'devices', being an event channel (for notification) and
shared memory (for the data).


Daniel Stodden
LRR     -      Lehrstuhl fÃr Rechnertechnik und Rechnerorganisation
Institut fÃr Informatik der TU MÃnchen             D-85748 Garching
http://www.lrr.in.tum.de/~stodden         mailto:stodden@xxxxxxxxxx
PGP Fingerprint: F5A4 1575 4C56 E26A 0B33  3D80 457E 82AE B0D8 735B

Xen-devel mailing list



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