On Sat, 2012-01-21 at 22:58 +0100, Cesare Leonardi wrote: > Package: linux-2.6 > Version: 3.2.1-1 > Severity: normal > > Some kernel version ago (some version before #656812), i started to see > this message on boot: > ----------------------- > waiting for /dev to be fully populated...[5.775083] cfg80211: failed > to add phy80211 symlink to netdev! > done. > ----------------------- > > No apparent affect apart the message: the network seems functioning > well. [...] Can you test whether the attache patch fixes this (and doesn't cause any new problems)? Instructions for rebuilding the kernel package are at: http://kernel-handbook.alioth.debian.org/ch-common-tasks.html#s-common-official Ben. -- Ben Hutchings Knowledge is power. France is bacon.
From 8f5f91cb3ba851ddef1829c89326438ab210a6e2 Mon Sep 17 00:00:00 2001
From: Ben Hutchings <ben@decadent.org.uk>
Date: Sun, 22 Jan 2012 00:55:29 +0000
Subject: [PATCH] ipw2200: Fix order of device registration
Currently cfg80211 fails to create a "phy80211" symlink in sysfs from
the net device to the wiphy device. The latter needs to be registered
first.
Signed-off-by: Ben Hutchings <ben@decadent.org.uk>
---
drivers/net/wireless/ipw2x00/ipw2200.c | 23 ++++++++++++-----------
1 files changed, 12 insertions(+), 11 deletions(-)
diff --git a/drivers/net/wireless/ipw2x00/ipw2200.c b/drivers/net/wireless/ipw2x00/ipw2200.c
index 99a710d..6e4aec3 100644
--- a/drivers/net/wireless/ipw2x00/ipw2200.c
+++ b/drivers/net/wireless/ipw2x00/ipw2200.c
@@ -11830,16 +11830,17 @@ static int __devinit ipw_pci_probe(struct pci_dev *pdev,
}
mutex_unlock(&priv->mutex);
- err = register_netdev(net_dev);
+
+ err = ipw_wdev_init(net_dev);
if (err) {
- IPW_ERROR("failed to register network device\n");
+ IPW_ERROR("failed to register wireless device\n");
goto out_remove_sysfs;
}
- err = ipw_wdev_init(net_dev);
+ err = register_netdev(net_dev);
if (err) {
- IPW_ERROR("failed to register wireless device\n");
- goto out_unregister_netdev;
+ IPW_ERROR("failed to register network device\n");
+ goto out_unregister_wiphy;
}
#ifdef CONFIG_IPW2200_PROMISCUOUS
@@ -11848,10 +11849,8 @@ static int __devinit ipw_pci_probe(struct pci_dev *pdev,
if (err) {
IPW_ERROR("Failed to register promiscuous network "
"device (error %d).\n", err);
- wiphy_unregister(priv->ieee->wdev.wiphy);
- kfree(priv->ieee->a_band.channels);
- kfree(priv->ieee->bg_band.channels);
- goto out_unregister_netdev;
+ unregister_netdev(priv->net_dev);
+ goto out_unregister_wiphy;
}
}
#endif
@@ -11863,8 +11862,10 @@ static int __devinit ipw_pci_probe(struct pci_dev *pdev,
return 0;
- out_unregister_netdev:
- unregister_netdev(priv->net_dev);
+ out_unregister_wiphy:
+ wiphy_unregister(priv->ieee->wdev.wiphy);
+ kfree(priv->ieee->a_band.channels);
+ kfree(priv->ieee->bg_band.channels);
out_remove_sysfs:
sysfs_remove_group(&pdev->dev.kobj, &ipw_attribute_group);
out_release_irq:
--
1.7.8.2
Attachment:
signature.asc
Description: This is a digitally signed message part