All of lore.kernel.org
 help / color / mirror / Atom feed
From: Andrew Warfield <andrew.warfield@gmail.com>
To: Richard <judicator3@gmail.com>
Cc: xen-devel@lists.sourceforge.net
Subject: Re: console driver - How domain0 processes console messages ?
Date: Wed, 16 Feb 2005 09:35:39 +0000	[thread overview]
Message-ID: <eacc82a40502160135344eeb1@mail.gmail.com> (raw)
In-Reply-To: <a146ff9b050216003837a321e6@mail.gmail.com>

> Whenever I try to output to the console of mini-os I get some garbage
> (non ascii characters). In XenoLinux, the communication ring is found
> at 2048 bytes offset from the
> shared_info structure. I am refering to the following macro found in ctrl_if.c
> 
> ************************************************************************
> #define get_ctrl_if() ((control_if_t *)((char *)HYPERVISOR_shared_info + 2048))
> ************************************************************************
> 
> Are the control rings found at the same location if I boot something
> else than Linux like for example the mini-os ? I am concern that my
> console driver in mini-os is sending event notification to domain0 but
> is however not writing the messages in the correct location of the
> communication ring and that is why I am getting some  bogus output on
> my console.

The domain build tools tell a gues linux where its shared_info page is
at start of day.  Take a look at
tools/libxc/xc_linux_build.c:xc_linux_build() to see this in action --
the code doeas a GETDOMAININFO hypercall to find out the location of
the shared page for the newly created comain, and then passes this on
the start_info page to the new linux VM.  The startup code is all
called from tools/python/xen/xend/XendDomainInfo.py, which is a bit
convoluted.  Anthony's c-based tools may be an easier reference for
what actually happens during domain startup -- it's effectively just a
series of calls to libxc.

> Next, I am going to look at tools/python/xen/lowlevel/xu/xu.c to see
> if domain0 is  receiving the actual data being sent from mini-os
> console driver.

Sounds like a plan.  I'd thing that you should be able to pull most of
the control ring interaction code straight out of the console driver.

good luck!
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

  reply	other threads:[~2005-02-16  9:35 UTC|newest]

Thread overview: 8+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2005-02-16  6:10 console driver - How domain0 processes console messages ? Richard
2005-02-16  7:54 ` Andrew Warfield
2005-02-16  8:38   ` Richard
2005-02-16  9:35     ` Andrew Warfield [this message]
2005-02-17  1:26       ` Anthony Liguori
2005-02-21  3:04         ` Richard
2005-02-16  8:38   ` aq
     [not found]     ` <eacc82a405021600562ed346d2@mail.gmail.com>
2005-02-16  8:57       ` Andrew Warfield

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=eacc82a40502160135344eeb1@mail.gmail.com \
    --to=andrew.warfield@gmail.com \
    --cc=andrew.warfield@cl.cam.ac.uk \
    --cc=judicator3@gmail.com \
    --cc=xen-devel@lists.sourceforge.net \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.