summaryrefslogtreecommitdiffstats
path: root/drivers/net/wireless
diff options
context:
space:
mode:
authorAmitkumar Karwar <akarwar@marvell.com>2011-07-14 05:51:57 +0200
committerJohn W. Linville <linville@tuxdriver.com>2011-07-21 20:52:02 +0200
commit4e3c44207f90500f65a3858d344b4ff3c63ea765 (patch)
treeccd7ecedcab4f44141a1cba168bade64dd3c8a86 /drivers/net/wireless
parentiwlagn: probe would crash with DEBUG_SHIRQ (diff)
downloadlinux-4e3c44207f90500f65a3858d344b4ff3c63ea765.tar.xz
linux-4e3c44207f90500f65a3858d344b4ff3c63ea765.zip
mwifiex: put multicast/broadcast packets to the same RA
For ad-hoc mode, RA is created for each peer connected. In case of multicast traffic new RA will be created for each multicast address. While processing Tx packets we have to go through this RA list. We can avoid some RA nodes by sharing same RA for both multicast and broadcast packets. Therefore "memset(0xff)" is used to treat multicast packet as broadcast one while choosing RA. Signed-off-by: Amitkumar Karwar <akarwar@marvell.com> Signed-off-by: Yogesh Ashok Powar <yogeshp@marvell.com> Signed-off-by: Bing Zhao <bzhao@marvell.com> Signed-off-by: John W. Linville <linville@tuxdriver.com>
Diffstat (limited to 'drivers/net/wireless')
-rw-r--r--drivers/net/wireless/mwifiex/wmm.c2
1 files changed, 2 insertions, 0 deletions
diff --git a/drivers/net/wireless/mwifiex/wmm.c b/drivers/net/wireless/mwifiex/wmm.c
index 67b2d0b78c71..69e260b41711 100644
--- a/drivers/net/wireless/mwifiex/wmm.c
+++ b/drivers/net/wireless/mwifiex/wmm.c
@@ -634,6 +634,8 @@ mwifiex_wmm_add_buf_txqueue(struct mwifiex_adapter *adapter,
ra_list = NULL;
} else {
memcpy(ra, skb->data, ETH_ALEN);
+ if (ra[0] & 0x01)
+ memset(ra, 0xff, ETH_ALEN);
ra_list = mwifiex_wmm_get_queue_raptr(priv, tid_down, ra);
}