Message ID | 50525758.1090609@gmail.com |
---|---|
State | Changes Requested, archived |
Delegated to: | David Miller |
Headers | show |
Erwan Velu <erwanaliasr1@gmail.com> : [...] > This patch is just adding a simple message every second telling we are > waiting the carrier to come up. > --- > net/ipv4/ipconfig.c | 8 ++++++++ > 1 file changed, 8 insertions(+) The Signed-off-by: line is missing. > diff --git a/net/ipv4/ipconfig.c b/net/ipv4/ipconfig.c > index 67e8a6b..d9f34b7 100644 > --- a/net/ipv4/ipconfig.c > +++ b/net/ipv4/ipconfig.c > @@ -205,6 +205,7 @@ static int __init ic_open_devs(void) > struct net_device *dev; > unsigned short oflags; > unsigned long start; > + unsigned int loops=0; (nit) unsigned int loops = 0; > last = &ic_first_dev; > rtnl_lock(); > @@ -266,6 +267,13 @@ static int __init ic_open_devs(void) > if (ic_is_init_dev(dev) && netif_carrier_ok(dev)) > goto have_carrier; > > + loops++; > + /* This loop is blocking the boot process until we get the > carrier or reach the timeout. Please split it into 80 cols max lines. [...] > + * Every second, we display a short message indicating we > wait the carrier */ (you can remove this part of the comment)
diff --git a/net/ipv4/ipconfig.c b/net/ipv4/ipconfig.c index 67e8a6b..d9f34b7 100644 --- a/net/ipv4/ipconfig.c +++ b/net/ipv4/ipconfig.c @@ -205,6 +205,7 @@ static int __init ic_open_devs(void) struct net_device *dev; unsigned short oflags; unsigned long start; + unsigned int loops=0; last = &ic_first_dev; rtnl_lock(); @@ -266,6 +267,13 @@ static int __init ic_open_devs(void) if (ic_is_init_dev(dev) && netif_carrier_ok(dev)) goto have_carrier; + loops++; + /* This loop is blocking the boot process until we get the carrier or reach the timeout. + * We have to inform the user about the situation as it could look like a kernel freeze. + * Every second, we display a short message indicating we wait the carrier */ + if ((loops % 1000) == 0) { + pr_info("IP-Config: Waiting Carrier (%d/%d):\n",loops / 1000, CONF_CARRIER_TIMEOUT / 1000);
From: Erwan Velu <erwanaliasr1@gmail.com> While using the ip= option at the cmdline, the kernel can hold the boot process for 2 minutes (CONF_CARRIER_TIMEOUT) if the carrier is not present. While waiting the carrier, user is not informed about this situation and so could think the kernel is frozen. This patch is just adding a simple message every second telling we are waiting the carrier to come up. --- net/ipv4/ipconfig.c | 8 ++++++++ 1 file changed, 8 insertions(+) + } msleep(1); } have_carrier: