2019-11-20 17:34:26

by Thomas Bogendoerfer

[permalink] [raw]
Subject: [PATCH net-next] net: ipconfig: Wait for deferred device probes

If network device drives are using deferred probing, it was possible
that waiting for devices to show up in ipconfig was already over,
when the device eventually showed up. By calling wait_for_device_probe()
we now make sure deferred probing is done before checking for available
devices.

Signed-off-by: Thomas Bogendoerfer <[email protected]>
---
net/ipv4/ipconfig.c | 3 +++
1 file changed, 3 insertions(+)

diff --git a/net/ipv4/ipconfig.c b/net/ipv4/ipconfig.c
index 9bcca08efec9..49b2381e857e 100644
--- a/net/ipv4/ipconfig.c
+++ b/net/ipv4/ipconfig.c
@@ -1412,6 +1412,9 @@ static int __init wait_for_devices(void)
struct net_device *dev;
int found = 0;

+ /* make sure deferred device probes are finished */
+ wait_for_device_probe();
+
rtnl_lock();
for_each_netdev(&init_net, dev) {
if (ic_is_init_dev(dev)) {
--
2.16.4



2019-11-20 20:42:38

by David Miller

[permalink] [raw]
Subject: Re: [PATCH net-next] net: ipconfig: Wait for deferred device probes

From: Thomas Bogendoerfer <[email protected]>
Date: Wed, 20 Nov 2019 17:02:36 +0100

> If network device drives are using deferred probing, it was possible
> that waiting for devices to show up in ipconfig was already over,
> when the device eventually showed up. By calling wait_for_device_probe()
> we now make sure deferred probing is done before checking for available
> devices.
>
> Signed-off-by: Thomas Bogendoerfer <[email protected]>
...
> + /* make sure deferred device probes are finished */
> + wait_for_device_probe();
> +

So much nicer, right? :-)

Applied.