Effected preliminary cleanup lead by the idea of kerneljanitor.org .
As recommended I'm asking for approval of the location of cleanup
and the manner it happened to know I'm heading in the right
direction.

Compiles. Not tested.

Signed-off-by: Nils Radtke <[email protected]>
---
 drivers/staging/wlan-ng/p80211netdev.c |   50 +++++++++++++++++++-------------
 1 files changed, 30 insertions(+), 20 deletions(-)

diff --git a/drivers/staging/wlan-ng/p80211netdev.c 
b/drivers/staging/wlan-ng/p80211netdev.c
index aa1792c..8104e11 100644
--- a/drivers/staging/wlan-ng/p80211netdev.c
+++ b/drivers/staging/wlan-ng/p80211netdev.c
@@ -176,25 +176,30 @@ static struct net_device_stats 
*p80211knetdev_get_stats(netdevice_t * netdev)
 ----------------------------------------------------------------*/
 static int p80211knetdev_open(netdevice_t *netdev)
 {
-       int result = 0;         /* success */
+       int ret = 0;
        wlandevice_t *wlandev = netdev->ml_priv;
 
        /* Check to make sure the MSD is running */
-       if (wlandev->msdstate != WLAN_MSD_RUNNING)
-               return -ENODEV;
+       if (wlandev->msdstate != WLAN_MSD_RUNNING) {
+               ret = -ENODEV;
+               goto end;
+       }
 
        /* Tell the MSD to open */
-       if (wlandev->open != NULL) {
-               result = wlandev->open(wlandev);
-               if (result == 0) {
-                       netif_start_queue(wlandev->netdev);
-                       wlandev->state = WLAN_DEVICE_OPEN;
-               }
-       } else {
-               result = -EAGAIN;
+       if (wlandev->open == NULL) {
+               printk(KERN_ERR "Sorry, got wlandev->open == NULL.\n");
+               ret = -EAGAIN;
+               goto end;
        }
 
-       return result;
+       ret = wlandev->open(wlandev);
+       if (ret) {
+               netif_start_queue(wlandev->netdev);
+               wlandev->state = WLAN_DEVICE_OPEN;
+       }
+
+end:
+       return ret;
 }
 
 /*----------------------------------------------------------------
@@ -211,16 +216,23 @@ static int p80211knetdev_open(netdevice_t *netdev)
 ----------------------------------------------------------------*/
 static int p80211knetdev_stop(netdevice_t *netdev)
 {
-       int result = 0;
+       int ret = -EFAULT;
        wlandevice_t *wlandev = netdev->ml_priv;
 
-       if (wlandev->close != NULL)
-               result = wlandev->close(wlandev);
+       if (wlandev->close == NULL) {
+               printk(KERN_ERR "Sorry, got wlandev->close == NULL.\n");
+               ret = -EFAULT; /* FIXME: nr: correct return code? */
+               goto end;
+       }
 
-       netif_stop_queue(wlandev->netdev);
-       wlandev->state = WLAN_DEVICE_CLOSED;
+       ret = wlandev->close(wlandev);
+       if (ret) {
+               netif_stop_queue(wlandev->netdev);
+               wlandev->state = WLAN_DEVICE_CLOSED;
+       }
 
-       return result;
+end:
+       return ret;
 }
 
 /*----------------------------------------------------------------
@@ -242,8 +254,6 @@ void p80211netdev_rx(wlandevice_t *wlandev, struct sk_buff 
*skb)
        skb_queue_tail(&wlandev->nsd_rxq, skb);
 
        tasklet_schedule(&wlandev->rx_bh);
-
-       return;
 }
 
 /*----------------------------------------------------------------
-- 
1.7.1

_______________________________________________
devel mailing list
[email protected]
http://driverdev.linuxdriverproject.org/mailman/listinfo/devel

Reply via email to