All of lore.kernel.org
 help / color / mirror / Atom feed
* [PATCH 19/24] [xen-unstable.hg] abort minios driver initialisation if xenbus not ready - xenstore stubdom doesn't need them anyway
@ 2009-03-23 15:21 Alex Zeffertt
  0 siblings, 0 replies; only message in thread
From: Alex Zeffertt @ 2009-03-23 15:21 UTC (permalink / raw)
  To: xen-devel@lists.xensource.com

[-- Attachment #1: Type: text/plain, Size: 2 bytes --]




[-- Attachment #2: minios_use_xenbus_ready_flag --]
[-- Type: text/plain, Size: 1668 bytes --]

Aborts initializing some drivers if xenbus is not available.

The only situation in which xenbus will not be available is
when the mini-os domain is a xenstored stubdom - in which
case none of the affected drivers (fs-front, lwip-net, netfront)
are used anyway.

So this patch is really just defensive coding.

Signed-off-by: Diego Ongaro <diego.ongaro@citrix.com>
Signed-off-by: Alex Zeffertt <alex.zeffertt@eu.citrix.com>
---

diff -r 95cc49ec5b90 extras/mini-os/fs-front.c
--- a/extras/mini-os/fs-front.c	Wed Mar 18 16:04:51 2009 +0000
+++ b/extras/mini-os/fs-front.c	Wed Mar 18 16:17:11 2009 +0000
@@ -1231,6 +1231,10 @@
 {
     struct minios_list_head *entry;
     struct fs_import *import = NULL;
+
+    if (!is_xenbus_ready())
+        return;
+
     printk("Initing FS fronend(s).\n");
 
     //exports = probe_exports();
diff -r 95cc49ec5b90 extras/mini-os/lwip-net.c
--- a/extras/mini-os/lwip-net.c	Wed Mar 18 16:04:51 2009 +0000
+++ b/extras/mini-os/lwip-net.c	Wed Mar 18 16:17:11 2009 +0000
@@ -350,7 +350,9 @@
   tprintk("Waiting for network.\n");
 
   dev = init_netfront(NULL, NULL, rawmac, &ip);
-  
+  if (dev == NULL)
+    tprintk("start_networking abort: init_netfront failed\n");
+
   if (ip) {
     ipaddr.addr = inet_addr(ip);
     if (IN_CLASSA(ntohl(ipaddr.addr)))
diff -r 95cc49ec5b90 extras/mini-os/netfront.c
--- a/extras/mini-os/netfront.c	Wed Mar 18 16:04:51 2009 +0000
+++ b/extras/mini-os/netfront.c	Wed Mar 18 16:17:11 2009 +0000
@@ -311,6 +311,9 @@
     struct netfront_dev *dev;
 
     char path[strlen(nodename) + 1 + 10 + 1];
+
+    if (!is_xenbus_ready())
+        return NULL;
 
     if (!thenetif_rx)
 	thenetif_rx = netif_rx;



[-- Attachment #3: Type: text/plain, Size: 138 bytes --]

_______________________________________________
Xen-devel mailing list
Xen-devel@lists.xensource.com
http://lists.xensource.com/xen-devel

^ permalink raw reply	[flat|nested] only message in thread

only message in thread, other threads:[~2009-03-23 15:21 UTC | newest]

Thread overview: (only message) (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2009-03-23 15:21 [PATCH 19/24] [xen-unstable.hg] abort minios driver initialisation if xenbus not ready - xenstore stubdom doesn't need them anyway Alex Zeffertt

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.