On Tue, 2012-04-03 at 17:01 +0100, Daniel Drake wrote: > These simple sanity check avoids extra complexity in error paths when > moving to asynchronous firmware loading (which means the device may fail to > init some time after its creation). Looks fine to me. Dan > Signed-off-by: Daniel Drake <dsd@xxxxxxxxxx> > --- > drivers/net/wireless/libertas/main.c | 9 ++++++++- > 1 files changed, 8 insertions(+), 1 deletions(-) > > diff --git a/drivers/net/wireless/libertas/main.c b/drivers/net/wireless/libertas/main.c > index fa09585..7eaf992 100644 > --- a/drivers/net/wireless/libertas/main.c > +++ b/drivers/net/wireless/libertas/main.c > @@ -1033,7 +1033,9 @@ void lbs_remove_card(struct lbs_private *priv) > lbs_deb_enter(LBS_DEB_MAIN); > > lbs_remove_mesh(priv); > - lbs_scan_deinit(priv); > + > + if (priv->wiphy_registered) > + lbs_scan_deinit(priv); > > /* worker thread destruction blocks on the in-flight command which > * should have been cleared already in lbs_stop_card(). > @@ -1128,6 +1130,11 @@ void lbs_stop_card(struct lbs_private *priv) > goto out; > dev = priv->dev; > > + /* If the netdev isn't registered, it means that lbs_start_card() was > + * never called so we have nothing to do here. */ > + if (dev->reg_state != NETREG_REGISTERED) > + goto out; > + > netif_stop_queue(dev); > netif_carrier_off(dev); > -- To unsubscribe from this list: send the line "unsubscribe linux-wireless" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html