staging: ks7010: remove duplicate code
authorTobin C. Harding <me@tobin.cc>
Thu, 27 Apr 2017 01:25:16 +0000 (11:25 +1000)
committerGreg Kroah-Hartman <gregkh@linuxfoundation.org>
Fri, 28 Apr 2017 09:45:49 +0000 (11:45 +0200)
Current switch statement has duplicate code in branches. This code can
be put after the switch statement so as to remove the duplication.

Move code to after switch statement, remove duplicate code. Make error
branch return so as not to execute the moved code block. Do not change
the program logic.

Signed-off-by: Tobin C. Harding <me@tobin.cc>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
drivers/staging/ks7010/ks_hostif.c

index 8cfda60..8755bd9 100644 (file)
@@ -462,17 +462,6 @@ void hostif_data_indication(struct ks_wlan_private *priv)
                memcpy(skb_put(skb, size), &eth_hdr->h_proto, size);
 
                aa1x_hdr = (struct ieee802_1x_hdr *)(priv->rxp + ETHER_HDR_SIZE);
-               if (aa1x_hdr->type == IEEE802_1X_TYPE_EAPOL_KEY &&
-                   priv->wpa.rsn_enabled)
-                       atomic_set(&priv->psstatus.snooze_guard, 1);
-
-               /* rx indication */
-               skb->dev = priv->net_dev;
-               skb->protocol = eth_type_trans(skb, skb->dev);
-               priv->nstats.rx_packets++;
-               priv->nstats.rx_bytes += rx_ind_size;
-               netif_rx(skb);
-
                break;
        case 0xF0:      /* NETBEUI/NetBIOS */
                rx_ind_size = (priv->rx_size + 2);
@@ -493,22 +482,23 @@ void hostif_data_indication(struct ks_wlan_private *priv)
                       rx_ind_size - 14);       /* copy after Type */
 
                aa1x_hdr = (struct ieee802_1x_hdr *)(priv->rxp + 14);
-               if (aa1x_hdr->type == IEEE802_1X_TYPE_EAPOL_KEY &&
-                   priv->wpa.rsn_enabled)
-                       atomic_set(&priv->psstatus.snooze_guard, 1);
-
-               /* rx indication */
-               skb->dev = priv->net_dev;
-               skb->protocol = eth_type_trans(skb, skb->dev);
-               priv->nstats.rx_packets++;
-               priv->nstats.rx_bytes += rx_ind_size;
-               netif_rx(skb);
-
                break;
        default:        /* other rx data */
                DPRINTK(2, "invalid data format\n");
                priv->nstats.rx_errors++;
+               return;
        }
+
+       if (aa1x_hdr->type == IEEE802_1X_TYPE_EAPOL_KEY &&
+           priv->wpa.rsn_enabled)
+               atomic_set(&priv->psstatus.snooze_guard, 1);
+
+       /* rx indication */
+       skb->dev = priv->net_dev;
+       skb->protocol = eth_type_trans(skb, skb->dev);
+       priv->nstats.rx_packets++;
+       priv->nstats.rx_bytes += rx_ind_size;
+       netif_rx(skb);
 }
 
 static