staging: Remove test of is_broadcast with is_multicast
authorJoe Perches <joe@perches.com>
Tue, 8 May 2012 17:11:56 +0000 (10:11 -0700)
committerGreg Kroah-Hartman <gregkh@linuxfoundation.org>
Wed, 9 May 2012 20:52:23 +0000 (13:52 -0700)
A broadcast packet is a multicast packet, no need to test twice.

Reorder one defective test in rtl_core of is_multi_ether_addr
before is_broadcast_ether_addr as the is_multi returns true for
broadcast frames.

Signed-off-by: Joe Perches <joe@perches.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
drivers/staging/rtl8187se/ieee80211/ieee80211_tx.c
drivers/staging/rtl8187se/r8180_core.c
drivers/staging/rtl8192e/rtl8192e/rtl_core.c
drivers/staging/rtl8192e/rtl819x_TSProc.c
drivers/staging/rtl8192e/rtllib_rx.c
drivers/staging/rtl8192e/rtllib_tx.c
drivers/staging/rtl8192u/ieee80211/ieee80211_rx.c
drivers/staging/rtl8192u/ieee80211/ieee80211_tx.c
drivers/staging/rtl8192u/ieee80211/rtl819x_TSProc.c
drivers/staging/vt6656/dpc.c

index 77bb068d4a51ae19f7170d02a366a4bedf8cda14..89ed86ef0d15b960bdbf2f095fcc4539c90bcea1 100644 (file)
@@ -413,10 +413,7 @@ int ieee80211_rtl_xmit(struct sk_buff *skb,
 
                /* Determine fragmentation size based on destination (multicast
                * and broadcast are not fragmented) */
-//             if (is_multicast_ether_addr(dest) ||
-//             is_broadcast_ether_addr(dest)) {
-               if (is_multicast_ether_addr(header.addr1) ||
-               is_broadcast_ether_addr(header.addr1)) {
+               if (is_multicast_ether_addr(header.addr1)) {
                        frag_size = MAX_FRAG_THRESHOLD;
                        qos_ctl = QOS_CTL_NOTCONTAIN_ACK;
                }
index a513ec73ea15c3bddf8caa5f55ac6c54a1db4567..fd22b75aea4f1b549bf990ed6ea94371d8efd013 100644 (file)
@@ -2003,8 +2003,7 @@ short rtl8180_tx(struct net_device *dev, u8* txbuf, int len, int priority,
        }
 
                memcpy(&dest, frag_hdr->addr1, ETH_ALEN);
-               if (is_multicast_ether_addr(dest) ||
-                               is_broadcast_ether_addr(dest)) {
+               if (is_multicast_ether_addr(dest)) {
                        Duration = 0;
                        RtsDur = 0;
                        bRTSEnable = 0;
index 97a5f499d7c57f7a2eb9aeba7dfa954d6a4e7af6..4f602b227b5070196261e5fb1d6b25b89d5d5e54 100644 (file)
@@ -2024,10 +2024,10 @@ short rtl8192_tx(struct net_device *dev, struct sk_buff *skb)
        stype = WLAN_FC_GET_STYPE(fc);
        pda_addr = header->addr1;
 
-       if (is_multicast_ether_addr(pda_addr))
-               multi_addr = true;
-       else if (is_broadcast_ether_addr(pda_addr))
+       if (is_broadcast_ether_addr(pda_addr))
                broad_addr = true;
+       else if (is_multicast_ether_addr(pda_addr))
+               multi_addr = true;
        else
                uni_addr = true;
 
@@ -2358,8 +2358,7 @@ static void rtl8192_rx_normal(struct net_device *dev)
                                stats.RxBufShift);
                        skb_trim(skb, skb->len - 4/*sCrcLng*/);
                        rtllib_hdr = (struct rtllib_hdr_1addr *)skb->data;
-                       if (!is_broadcast_ether_addr(rtllib_hdr->addr1) &&
-                       !is_multicast_ether_addr(rtllib_hdr->addr1)) {
+                       if (!is_multicast_ether_addr(rtllib_hdr->addr1)) {
                                /* unicast packet */
                                unicast_packet = true;
                        }
index 711a096be7a7e5ca0c917e078bfb1be6e74625c0..658e875232aa7948f56146770c9b848b6b70420b 100644 (file)
@@ -310,7 +310,7 @@ bool GetTs(struct rtllib_device *ieee, struct ts_common_info **ppTS,
           u8 *Addr, u8 TID, enum tr_select TxRxSelect, bool bAddNewTs)
 {
        u8      UP = 0;
-       if (is_broadcast_ether_addr(Addr) || is_multicast_ether_addr(Addr)) {
+       if (is_multicast_ether_addr(Addr)) {
                RTLLIB_DEBUG(RTLLIB_DL_ERR, "ERR! get TS for Broadcast or "
                             "Multicast\n");
                return false;
index 40a59c998efece8b503d3dfc46c9ad4cc4680d8b..8b8a5c661a268feed60866afa4ed93cf146df491 100644 (file)
@@ -1000,7 +1000,7 @@ static int rtllib_rx_data_filter(struct rtllib_device *ieee, u16 fc,
                        return -1;
 
                /* {broad,multi}cast packets to our BSS go through */
-               if (is_multicast_ether_addr(dst) || is_broadcast_ether_addr(dst)) {
+               if (is_multicast_ether_addr(dst)) {
                        if (memcmp(bssid, ieee->current_network.bssid, ETH_ALEN))
                                return -1;
                }
@@ -1269,7 +1269,7 @@ static int rtllib_rx_InfraAdhoc(struct rtllib_device *ieee, struct sk_buff *skb,
        sc = le16_to_cpu(hdr->seq_ctl);
 
        /*Filter pkt not to me*/
-       multicast = is_multicast_ether_addr(hdr->addr1)|is_broadcast_ether_addr(hdr->addr1);
+       multicast = is_multicast_ether_addr(hdr->addr1);
        unicast = !multicast;
        if (unicast && (compare_ether_addr(dev->dev_addr, hdr->addr1) != 0)) {
                if (ieee->bNetPromiscuousMode)
@@ -1350,7 +1350,7 @@ static int rtllib_rx_InfraAdhoc(struct rtllib_device *ieee, struct sk_buff *skb,
        /* Get TS for Rx Reorder  */
        hdr = (struct rtllib_hdr_4addr *) skb->data;
        if (ieee->current_network.qos_data.active && IsQoSDataFrame(skb->data)
-               && !is_multicast_ether_addr(hdr->addr1) && !is_broadcast_ether_addr(hdr->addr1)
+               && !is_multicast_ether_addr(hdr->addr1)
                && (!bToOtherSTA)) {
                TID = Frame_QoSTID(skb->data);
                SeqNum = WLAN_GET_SEQ_SEQ(sc);
index f24aa00c533daa9b847a9f25405ffc92f93e6804..42900ee4825b67c0e37aae090deccc082602a568 100644 (file)
@@ -296,8 +296,7 @@ static void rtllib_tx_query_agg_cap(struct rtllib_device *ieee,
                return;
        if (!IsQoSDataFrame(skb->data))
                return;
-       if (is_multicast_ether_addr(hdr->addr1) ||
-           is_broadcast_ether_addr(hdr->addr1))
+       if (is_multicast_ether_addr(hdr->addr1))
                return;
 
        if (tcb_desc->bdhcp || ieee->CntAfterLink < 2)
@@ -515,7 +514,7 @@ u16 rtllib_query_seqnum(struct rtllib_device *ieee, struct sk_buff *skb,
 {
        u16 seqnum = 0;
 
-       if (is_multicast_ether_addr(dst) || is_broadcast_ether_addr(dst))
+       if (is_multicast_ether_addr(dst))
                return 0;
        if (IsQoSDataFrame(skb->data)) {
                struct tx_ts_record *pTS = NULL;
@@ -698,8 +697,7 @@ int rtllib_xmit_inter(struct sk_buff *skb, struct net_device *dev)
                               ETH_ALEN);
                }
 
-               bIsMulticast = is_broadcast_ether_addr(header.addr1) ||
-                              is_multicast_ether_addr(header.addr1);
+               bIsMulticast = is_multicast_ether_addr(header.addr1);
 
                header.frame_ctl = cpu_to_le16(fc);
 
index 6249c3f160ec50c9ab900862a81eb6a2d3b45683..e3cf7a45b90073d37dfa319699c12f93dc8acf4e 100644 (file)
@@ -1285,7 +1285,7 @@ int ieee80211_rx(struct ieee80211_device *ieee, struct sk_buff *skb,
 */
 //added by amy for reorder
        if(ieee->current_network.qos_data.active && IsQoSDataFrame(skb->data)
-               && !is_multicast_ether_addr(hdr->addr1) && !is_broadcast_ether_addr(hdr->addr1))
+               && !is_multicast_ether_addr(hdr->addr1))
        {
                TID = Frame_QoSTID(skb->data);
                SeqNum = WLAN_GET_SEQ_SEQ(sc);
index 59c45a510efb9d7e4e58c2be39c8be36ff8c3f0f..3f5ceeb88b6cbcdf3da6b6fcd1c3a54648a2e57f 100644 (file)
@@ -314,7 +314,7 @@ void ieee80211_tx_query_agg_cap(struct ieee80211_device* ieee, struct sk_buff* s
        if (!IsQoSDataFrame(skb->data))
                return;
 
-       if (is_multicast_ether_addr(hdr->addr1) || is_broadcast_ether_addr(hdr->addr1))
+       if (is_multicast_ether_addr(hdr->addr1))
                return;
        //check packet and mode later
 #ifdef TO_DO_LIST
@@ -575,7 +575,7 @@ void ieee80211_txrate_selectmode(struct ieee80211_device* ieee, cb_desc* tcb_des
 
 void ieee80211_query_seqnum(struct ieee80211_device*ieee, struct sk_buff* skb, u8* dst)
 {
-       if (is_multicast_ether_addr(dst) || is_broadcast_ether_addr(dst))
+       if (is_multicast_ether_addr(dst))
                return;
        if (IsQoSDataFrame(skb->data)) //we deal qos data only
        {
@@ -693,8 +693,7 @@ int ieee80211_xmit(struct sk_buff *skb, struct net_device *dev)
 
                /* Determine fragmentation size based on destination (multicast
                * and broadcast are not fragmented) */
-               if (is_multicast_ether_addr(header.addr1) ||
-               is_broadcast_ether_addr(header.addr1)) {
+               if (is_multicast_ether_addr(header.addr1)) {
                        frag_size = MAX_FRAG_THRESHOLD;
                        qos_ctl |= QOS_CTL_NOTCONTAIN_ACK;
                }
index 957ce4ef48b52a0ea5567940a7c2df3e6b2d04f5..06a9824bbff10da2930d3e98513f846e2fb3194e 100644 (file)
@@ -350,7 +350,7 @@ bool GetTs(
        // We do not build any TS for Broadcast or Multicast stream.
        // So reject these kinds of search here.
        //
-       if(is_broadcast_ether_addr(Addr) || is_multicast_ether_addr(Addr))
+       if (is_multicast_ether_addr(Addr))
        {
                IEEE80211_DEBUG(IEEE80211_DL_ERR, "get TS for Broadcast or Multicast\n");
                return false;
index c0edf97535dc895e678a92c129595273f227a9f5..e4bdf2a2b5829292e23d8f4675fab023249e16d3 100644 (file)
@@ -452,7 +452,7 @@ RXbBulkInProcessData (
        }
     }
 
-    if (!is_multicast_ether_addr(pMACHeader->abyAddr1) && !is_broadcast_ether_addr(pMACHeader->abyAddr1)) {
+    if (!is_multicast_ether_addr(pMACHeader->abyAddr1)) {
         if ( WCTLbIsDuplicate(&(pDevice->sDupRxCache), (PS802_11Header) pbyFrame) ) {
             pDevice->s802_11Counter.FrameDuplicateCount++;
             return FALSE;