aboutsummaryrefslogtreecommitdiffstats
path: root/extras
diff options
context:
space:
mode:
authorDaniel De Graaf <dgdegra@tycho.nsa.gov>2012-02-09 18:33:30 +0000
committerDaniel De Graaf <dgdegra@tycho.nsa.gov>2012-02-09 18:33:30 +0000
commitd45361b2ae45238fac9259d79daf32a022acdfcc (patch)
tree0005cfc48e0a69f06f5914f456e89b19f045320e /extras
parent6a2de353a969bdcb448ea977eca39401be312051 (diff)
downloadxen-d45361b2ae45238fac9259d79daf32a022acdfcc.tar.gz
xen-d45361b2ae45238fac9259d79daf32a022acdfcc.tar.bz2
xen-d45361b2ae45238fac9259d79daf32a022acdfcc.zip
mini-os: avoid crash if no console is provided
Signed-off-by: Daniel De Graaf <dgdegra@tycho.nsa.gov> Acked-by: Ian Campbell <ian.campbell@citrix.com> Cc: Stefano Stabellini <stefano.stabellini@eu.citrix.com> Committed-by: Ian Jackson <Ian.Jackson@eu.citrix.com>
Diffstat (limited to 'extras')
-rw-r--r--extras/mini-os/console/xencons_ring.c7
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 9ed37567fd..8b81dc41ae 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;