summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorGerlando Falauto <gerlando.falauto@keymile.com>2011-12-19 22:58:04 +0000
committerDavid S. Miller <davem@davemloft.net>2011-12-20 14:09:15 -0500
commitcd7816d14953c8af910af5bb92f488b0b277e29d (patch)
tree39cdc61bbdd4110403a050f64b91ce2a64589180
parenta76c0adf60f6ca5ff3481992e4ea0383776b24d2 (diff)
net: have ipconfig not wait if no dev is available
previous commit 3fb72f1e6e6165c5f495e8dc11c5bbd14c73385c makes IP-Config wait for carrier on at least one network device. Before waiting (predefined value 120s), check that at least one device was successfully brought up. Otherwise (e.g. buggy bootloader which does not set the MAC address) there is no point in waiting for carrier. Cc: Micha Nelissen <micha@neli.hopto.org> Cc: Holger Brunck <holger.brunck@keymile.com> Signed-off-by: Gerlando Falauto <gerlando.falauto@keymile.com> Signed-off-by: David S. Miller <davem@davemloft.net>
-rw-r--r--net/ipv4/ipconfig.c4
1 files changed, 4 insertions, 0 deletions
diff --git a/net/ipv4/ipconfig.c b/net/ipv4/ipconfig.c
index 0da2afc97f3..99ec116bef1 100644
--- a/net/ipv4/ipconfig.c
+++ b/net/ipv4/ipconfig.c
@@ -253,6 +253,10 @@ static int __init ic_open_devs(void)
}
}
+ /* no point in waiting if we could not bring up at least one device */
+ if (!ic_first_dev)
+ goto have_carrier;
+
/* wait for a carrier on at least one device */
start = jiffies;
while (jiffies - start < msecs_to_jiffies(CONF_CARRIER_TIMEOUT)) {