|
|
|
|
|
|
|
|
|
|
xen-devel
Re: [Xen-devel] console driver - How domain0 processes console messages
> I am trying to undestand how domain0 processes console
> messages (i.e messages with type CMSG_CONSOLE and subtype
> CMSG_CONSOLE_DATA).
Console messages currently share the same shared memory rings that
control messages use. As such, ctrl_if_send_message_noblock(), is a
non-blocking send on these rings, and ctrl_if_notify_controller() is
an event channel notification of a control event. Aside from console
messages, control messages are exactly that -- things like driver
setup and connection. See xen/include/public/io/domain_controller.h
for a full list.
The control message rings are mapped to user space in dom0 through
calls to libxc, while the notification is delivered to dom0 via
/dev/evtchn. If you are using stable or testing, these rings are
accessed directly by xend, see tools/python/xen/lowlevel/xu/xu.c
(especially the notifier and port objects therein). If you are using
the unstable tree, xcs (tools/xcs/xcs.c) demultiplexes the shared
rings/event channels.
In xend, consol messages are eventually handled in
tools/python/xen/xend/server/console.py.
Hope that helps. We plan to separate the console messages from the
control rings in the very near future, allowing them to have a
separate driver and be throttled independent of control messages.
This should make the current interface considerably simpler.
hth,
a.
-------------------------------------------------------
SF email is sponsored by - The IT Product Guide
Read honest & candid reviews on hundreds of IT Products from real users.
Discover which products truly live up to the hype. Start reading now.
http://ads.osdn.com/?ad_id=6595&alloc_id=14396&op=click
_______________________________________________
Xen-devel mailing list
Xen-devel@xxxxxxxxxxxxxxxxxxxxx
https://lists.sourceforge.net/lists/listinfo/xen-devel
|
|
|
|
|