[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index] Re: [Xen-devel] [PATCH 07/18] mini-os: avoid crash if no console is provided
On Wed, 2012-01-11 at 17:21 +0000, Daniel De Graaf wrote: When/why does this happen? I guess it is because when starting the xenstore domain you cannot use xenstore to communicate with xenconsoled (and/or it isn't even running yet). I wonder if there is a way we can do lazy-setup of the console for just the xenstore domain? Alternatively I seem to recall a little tool which Diego wrote to pull the console ring out of a domain directly as a debuging aid but that relies on us setting up a console ring and evtchn even if xenconsoled cannot be involved which makes this patch unnecessary. Ian. > Signed-off-by: Daniel De Graaf <dgdegra@xxxxxxxxxxxxx> > --- > extras/mini-os/console/xencons_ring.c | 7 ++++++- > 1 files changed, 6 insertions(+), 1 deletions(-) > > diff --git a/extras/mini-os/console/xencons_ring.c > b/extras/mini-os/console/xencons_ring.c > index 22fd618..14a8bd1 100644 > --- a/extras/mini-os/console/xencons_ring.c > +++ b/extras/mini-os/console/xencons_ring.c > @@ -25,7 +25,10 @@ static inline void notify_daemon(struct consfront_dev *dev) > > static inline struct xencons_interface *xencons_interface(void) > { > - return mfn_to_virt(start_info.console.domU.mfn); > + if (start_info.console.domU.evtchn) > + return mfn_to_virt(start_info.console.domU.mfn); > + else > + return NULL; > } > > int xencons_ring_send_no_notify(struct consfront_dev *dev, const char *data, > unsigned len) > @@ -38,6 +41,8 @@ int xencons_ring_send_no_notify(struct consfront_dev *dev, > const char *data, uns > intf = xencons_interface(); > else > intf = dev->ring; > + if (!intf) > + return sent; > > cons = intf->out_cons; > prod = intf->out_prod; _______________________________________________ Xen-devel mailing list Xen-devel@xxxxxxxxxxxxxxxxxxx http://lists.xensource.com/xen-devel
|
Lists.xenproject.org is hosted with RackSpace, monitoring our |