Skip to contentSkip to conversation

atmel: unregister_netdev() on error

PATCH In review Kulikov Vasiliy 2 participants 3 messages Jul 10, 2010 1 message not in the archive

Subsystems (5)
lore
Share & tools
lore
#0 lore raw

PATCH 1/1 atmel: unregister_netdev() on error

We must unregister registered device if probe_atmel_card() fails.

---
 drivers/net/wireless/atmel.c |    5 ++++-
 1 files changed, 4 insertions(+), 1 deletions(-)
drivers/net/wireless/atmel.c +4 -1
index c8f7090..b9334a3 100644
@@ -1626,7 +1626,7 @@ struct net_device *init_atmel_card(unsigned short irq, unsigned long port,
 
 	if (!probe_atmel_card(dev)) {
 		unregister_netdev(dev);
-		goto err_out_res;
+		goto err_out_unreg;
 	}
 
 	netif_carrier_off(dev);
@@ -1640,6 +1640,9 @@ struct net_device *init_atmel_card(unsigned short irq, unsigned long port,
 
 	return dev;
 
+err_out_unreg:
+	unregister_netdev(dev);
+
 err_out_res:
 	release_region(dev->base_addr, 32);
 err_out_irq:
Signature · 1 line
1.7.0.4

A message that is not in the archive (sent off-list or not yet received): 1278767508-10164-1-git-send-email-segooon-Re5JQEeQqe8AvxtiuMwx3w@public.gmane.org

#2 lore raw
Quoted 1 line · Kulikov Vasiliy

We must unregister registered device if probe_atmel_card() fails.

I think you hit send accidentally on this one?

drivers/net/wireless/atmel.c struct net_device *init_atmel_card(unsigned short irq, unsigned long port, · line 1628

Quoted 2 lines
drivers/net/wireless/atmel.c +0 -0
 	if (!probe_atmel_card(dev)) {
 		unregister_netdev(dev);
		^^^^^^^^^^^^^^^^^^^^^^^

drivers/net/wireless/atmel.c struct net_device *init_atmel_card(unsigned short irq, unsigned long port, · line 1644

Quoted 11 lines
drivers/net/wireless/atmel.c +3 -1
-		goto err_out_res;
+		goto err_out_unreg;
 	}
 
 	netif_carrier_off(dev);
@@ -1640,6 +1640,9 @@ struct net_device *init_atmel_card(unsigned short irq, unsigned long port,
 
 	return dev;
 
+err_out_unreg:
+	unregister_netdev(dev);
	^^^^^^^^^^^^^^^^^^^^^^

drivers/net/wireless/atmel.c struct net_device *init_atmel_card(unsigned short irq, unsigned long port, · line 1645

Quoted 1 line
drivers/net/wireless/atmel.c +1 -0
+

What the pants? :P

regards,
dan carpenter

#3 lore raw
Quoted 6 lines · Dan Carpenter

drivers/net/wireless/atmel.c struct net_device *init_atmel_card(unsigned short irq, unsigned long port, · line 1644

Quoted 2 lines
drivers/net/wireless/atmel.c +2 -0
+err_out_unreg:
+	unregister_netdev(dev);
	^^^^^^^^^^^^^^^^^^^^^^
Quoted 1 line

+

What the pants? :P

Hmm, I've slightly misunderstood the code, sorry.

Thanks, Dan.