RE: [PATCH 15/21] mwifiex: slight optimization of addr compare

2013-12-23 Thread Bing Zhao
Hi Ding,

> diff --git a/drivers/net/wireless/mwifiex/11n_rxreorder.c
> b/drivers/net/wireless/mwifiex/11n_rxreorder.c
> index ada809f..a180298 100644
> --- a/drivers/net/wireless/mwifiex/11n_rxreorder.c
> +++ b/drivers/net/wireless/mwifiex/11n_rxreorder.c
> @@ -164,7 +164,7 @@ mwifiex_11n_get_rx_reorder_tbl(struct mwifiex_private 
> *priv, int tid, u8 *ta)
> 
>   spin_lock_irqsave(>rx_reorder_tbl_lock, flags);
>   list_for_each_entry(tbl, >rx_reorder_tbl_ptr, list) {
> - if (!memcmp(tbl->ta, ta, ETH_ALEN) && tbl->tid == tid) {
> + if (ether_addr_equal_unaligned(tbl->ta, ta) && tbl->tid == tid) 
> {

checkpatch.pl found several warnings in this patch.
WARNING: line over 80 characters

Could you please fix these warnings by splitting the function arguments into 
multiple lines?

Thanks,
Bing



RE: [PATCH 15/21] mwifiex: slight optimization of addr compare

2013-12-23 Thread Bing Zhao
Hi Ding,

 diff --git a/drivers/net/wireless/mwifiex/11n_rxreorder.c
 b/drivers/net/wireless/mwifiex/11n_rxreorder.c
 index ada809f..a180298 100644
 --- a/drivers/net/wireless/mwifiex/11n_rxreorder.c
 +++ b/drivers/net/wireless/mwifiex/11n_rxreorder.c
 @@ -164,7 +164,7 @@ mwifiex_11n_get_rx_reorder_tbl(struct mwifiex_private 
 *priv, int tid, u8 *ta)
 
   spin_lock_irqsave(priv-rx_reorder_tbl_lock, flags);
   list_for_each_entry(tbl, priv-rx_reorder_tbl_ptr, list) {
 - if (!memcmp(tbl-ta, ta, ETH_ALEN)  tbl-tid == tid) {
 + if (ether_addr_equal_unaligned(tbl-ta, ta)  tbl-tid == tid) 
 {

checkpatch.pl found several warnings in this patch.
WARNING: line over 80 characters

Could you please fix these warnings by splitting the function arguments into 
multiple lines?

Thanks,
Bing



[PATCH 15/21] mwifiex: slight optimization of addr compare

2013-12-22 Thread Ding Tianhong
Use the recently added and possibly more efficient
ether_addr_equal_unaligned to instead of memcmp.

Cc: Bing Zhao 
Cc: John W. Linville 
Cc: linux-wirel...@vger.kernel.org
Cc: net...@vger.kernel.org
Cc: linux-kernel@vger.kernel.org
Signed-off-by: Weilong Chen 
Signed-off-by: Ding Tianhong 
---
 drivers/net/wireless/mwifiex/11n.c   | 4 ++--
 drivers/net/wireless/mwifiex/11n_rxreorder.c | 4 ++--
 drivers/net/wireless/mwifiex/cfg80211.c  | 2 +-
 drivers/net/wireless/mwifiex/scan.c  | 4 +---
 drivers/net/wireless/mwifiex/sta_cmdresp.c   | 3 +--
 drivers/net/wireless/mwifiex/sta_rx.c| 2 +-
 drivers/net/wireless/mwifiex/uap_event.c | 2 +-
 drivers/net/wireless/mwifiex/wmm.c   | 2 +-
 8 files changed, 10 insertions(+), 13 deletions(-)

diff --git a/drivers/net/wireless/mwifiex/11n.c 
b/drivers/net/wireless/mwifiex/11n.c
index 0b803c0..b9f0e7e 100644
--- a/drivers/net/wireless/mwifiex/11n.c
+++ b/drivers/net/wireless/mwifiex/11n.c
@@ -483,7 +483,7 @@ mwifiex_get_ba_tbl(struct mwifiex_private *priv, int tid, 
u8 *ra)
 
spin_lock_irqsave(>tx_ba_stream_tbl_lock, flags);
list_for_each_entry(tx_ba_tsr_tbl, >tx_ba_stream_tbl_ptr, list) {
-   if (!memcmp(tx_ba_tsr_tbl->ra, ra, ETH_ALEN) &&
+   if (ether_addr_equal_unaligned(tx_ba_tsr_tbl->ra, ra) &&
tx_ba_tsr_tbl->tid == tid) {
spin_unlock_irqrestore(>tx_ba_stream_tbl_lock,
   flags);
@@ -676,7 +676,7 @@ void mwifiex_del_tx_ba_stream_tbl_by_ra(struct 
mwifiex_private *priv, u8 *ra)
 
spin_lock_irqsave(>tx_ba_stream_tbl_lock, flags);
list_for_each_entry_safe(tbl, tmp, >tx_ba_stream_tbl_ptr, list) {
-   if (!memcmp(tbl->ra, ra, ETH_ALEN)) {
+   if (ether_addr_equal_unaligned(tbl->ra, ra)) {
spin_unlock_irqrestore(>tx_ba_stream_tbl_lock,
   flags);
mwifiex_11n_delete_tx_ba_stream_tbl_entry(priv, tbl);
diff --git a/drivers/net/wireless/mwifiex/11n_rxreorder.c 
b/drivers/net/wireless/mwifiex/11n_rxreorder.c
index ada809f..a180298 100644
--- a/drivers/net/wireless/mwifiex/11n_rxreorder.c
+++ b/drivers/net/wireless/mwifiex/11n_rxreorder.c
@@ -164,7 +164,7 @@ mwifiex_11n_get_rx_reorder_tbl(struct mwifiex_private 
*priv, int tid, u8 *ta)
 
spin_lock_irqsave(>rx_reorder_tbl_lock, flags);
list_for_each_entry(tbl, >rx_reorder_tbl_ptr, list) {
-   if (!memcmp(tbl->ta, ta, ETH_ALEN) && tbl->tid == tid) {
+   if (ether_addr_equal_unaligned(tbl->ta, ta) && tbl->tid == tid) 
{
spin_unlock_irqrestore(>rx_reorder_tbl_lock,
   flags);
return tbl;
@@ -188,7 +188,7 @@ void mwifiex_11n_del_rx_reorder_tbl_by_ta(struct 
mwifiex_private *priv, u8 *ta)
 
spin_lock_irqsave(>rx_reorder_tbl_lock, flags);
list_for_each_entry_safe(tbl, tmp, >rx_reorder_tbl_ptr, list) {
-   if (!memcmp(tbl->ta, ta, ETH_ALEN)) {
+   if (ether_addr_equal_unaligned(tbl->ta, ta)) {
spin_unlock_irqrestore(>rx_reorder_tbl_lock,
   flags);
mwifiex_del_rx_reorder_entry(priv, tbl);
diff --git a/drivers/net/wireless/mwifiex/cfg80211.c 
b/drivers/net/wireless/mwifiex/cfg80211.c
index 4d23647..05fe28a 100644
--- a/drivers/net/wireless/mwifiex/cfg80211.c
+++ b/drivers/net/wireless/mwifiex/cfg80211.c
@@ -992,7 +992,7 @@ mwifiex_cfg80211_get_station(struct wiphy *wiphy, struct 
net_device *dev,
 
if (!priv->media_connected)
return -ENOENT;
-   if (memcmp(mac, priv->cfg_bssid, ETH_ALEN))
+   if (!ether_addr_equal_unaligned(mac, priv->cfg_bssid))
return -ENOENT;
 
return mwifiex_dump_station_info(priv, sinfo);
diff --git a/drivers/net/wireless/mwifiex/scan.c 
b/drivers/net/wireless/mwifiex/scan.c
index 0ed0664..cb19afd 100644
--- a/drivers/net/wireless/mwifiex/scan.c
+++ b/drivers/net/wireless/mwifiex/scan.c
@@ -1817,9 +1817,7 @@ int mwifiex_ret_802_11_scan(struct mwifiex_private *priv,
bss_priv->band = band;
bss_priv->fw_tsf = fw_tsf;
if (priv->media_connected &&
-   !memcmp(bssid,
-   priv->curr_bss_params.bss_descriptor
-   .mac_address, ETH_ALEN))
+   ether_addr_equal_unaligned(bssid, 
priv->curr_bss_params.bss_descriptor.mac_address))
mwifiex_update_curr_bss_params(priv,
   bss);
cfg80211_put_bss(priv->wdev->wiphy, bss);
diff --git 

[PATCH 15/21] mwifiex: slight optimization of addr compare

2013-12-22 Thread Ding Tianhong
Use the recently added and possibly more efficient
ether_addr_equal_unaligned to instead of memcmp.

Cc: Bing Zhao bz...@marvell.com
Cc: John W. Linville linvi...@tuxdriver.com
Cc: linux-wirel...@vger.kernel.org
Cc: net...@vger.kernel.org
Cc: linux-kernel@vger.kernel.org
Signed-off-by: Weilong Chen chenweil...@huawei.com
Signed-off-by: Ding Tianhong dingtianh...@huawei.com
---
 drivers/net/wireless/mwifiex/11n.c   | 4 ++--
 drivers/net/wireless/mwifiex/11n_rxreorder.c | 4 ++--
 drivers/net/wireless/mwifiex/cfg80211.c  | 2 +-
 drivers/net/wireless/mwifiex/scan.c  | 4 +---
 drivers/net/wireless/mwifiex/sta_cmdresp.c   | 3 +--
 drivers/net/wireless/mwifiex/sta_rx.c| 2 +-
 drivers/net/wireless/mwifiex/uap_event.c | 2 +-
 drivers/net/wireless/mwifiex/wmm.c   | 2 +-
 8 files changed, 10 insertions(+), 13 deletions(-)

diff --git a/drivers/net/wireless/mwifiex/11n.c 
b/drivers/net/wireless/mwifiex/11n.c
index 0b803c0..b9f0e7e 100644
--- a/drivers/net/wireless/mwifiex/11n.c
+++ b/drivers/net/wireless/mwifiex/11n.c
@@ -483,7 +483,7 @@ mwifiex_get_ba_tbl(struct mwifiex_private *priv, int tid, 
u8 *ra)
 
spin_lock_irqsave(priv-tx_ba_stream_tbl_lock, flags);
list_for_each_entry(tx_ba_tsr_tbl, priv-tx_ba_stream_tbl_ptr, list) {
-   if (!memcmp(tx_ba_tsr_tbl-ra, ra, ETH_ALEN) 
+   if (ether_addr_equal_unaligned(tx_ba_tsr_tbl-ra, ra) 
tx_ba_tsr_tbl-tid == tid) {
spin_unlock_irqrestore(priv-tx_ba_stream_tbl_lock,
   flags);
@@ -676,7 +676,7 @@ void mwifiex_del_tx_ba_stream_tbl_by_ra(struct 
mwifiex_private *priv, u8 *ra)
 
spin_lock_irqsave(priv-tx_ba_stream_tbl_lock, flags);
list_for_each_entry_safe(tbl, tmp, priv-tx_ba_stream_tbl_ptr, list) {
-   if (!memcmp(tbl-ra, ra, ETH_ALEN)) {
+   if (ether_addr_equal_unaligned(tbl-ra, ra)) {
spin_unlock_irqrestore(priv-tx_ba_stream_tbl_lock,
   flags);
mwifiex_11n_delete_tx_ba_stream_tbl_entry(priv, tbl);
diff --git a/drivers/net/wireless/mwifiex/11n_rxreorder.c 
b/drivers/net/wireless/mwifiex/11n_rxreorder.c
index ada809f..a180298 100644
--- a/drivers/net/wireless/mwifiex/11n_rxreorder.c
+++ b/drivers/net/wireless/mwifiex/11n_rxreorder.c
@@ -164,7 +164,7 @@ mwifiex_11n_get_rx_reorder_tbl(struct mwifiex_private 
*priv, int tid, u8 *ta)
 
spin_lock_irqsave(priv-rx_reorder_tbl_lock, flags);
list_for_each_entry(tbl, priv-rx_reorder_tbl_ptr, list) {
-   if (!memcmp(tbl-ta, ta, ETH_ALEN)  tbl-tid == tid) {
+   if (ether_addr_equal_unaligned(tbl-ta, ta)  tbl-tid == tid) 
{
spin_unlock_irqrestore(priv-rx_reorder_tbl_lock,
   flags);
return tbl;
@@ -188,7 +188,7 @@ void mwifiex_11n_del_rx_reorder_tbl_by_ta(struct 
mwifiex_private *priv, u8 *ta)
 
spin_lock_irqsave(priv-rx_reorder_tbl_lock, flags);
list_for_each_entry_safe(tbl, tmp, priv-rx_reorder_tbl_ptr, list) {
-   if (!memcmp(tbl-ta, ta, ETH_ALEN)) {
+   if (ether_addr_equal_unaligned(tbl-ta, ta)) {
spin_unlock_irqrestore(priv-rx_reorder_tbl_lock,
   flags);
mwifiex_del_rx_reorder_entry(priv, tbl);
diff --git a/drivers/net/wireless/mwifiex/cfg80211.c 
b/drivers/net/wireless/mwifiex/cfg80211.c
index 4d23647..05fe28a 100644
--- a/drivers/net/wireless/mwifiex/cfg80211.c
+++ b/drivers/net/wireless/mwifiex/cfg80211.c
@@ -992,7 +992,7 @@ mwifiex_cfg80211_get_station(struct wiphy *wiphy, struct 
net_device *dev,
 
if (!priv-media_connected)
return -ENOENT;
-   if (memcmp(mac, priv-cfg_bssid, ETH_ALEN))
+   if (!ether_addr_equal_unaligned(mac, priv-cfg_bssid))
return -ENOENT;
 
return mwifiex_dump_station_info(priv, sinfo);
diff --git a/drivers/net/wireless/mwifiex/scan.c 
b/drivers/net/wireless/mwifiex/scan.c
index 0ed0664..cb19afd 100644
--- a/drivers/net/wireless/mwifiex/scan.c
+++ b/drivers/net/wireless/mwifiex/scan.c
@@ -1817,9 +1817,7 @@ int mwifiex_ret_802_11_scan(struct mwifiex_private *priv,
bss_priv-band = band;
bss_priv-fw_tsf = fw_tsf;
if (priv-media_connected 
-   !memcmp(bssid,
-   priv-curr_bss_params.bss_descriptor
-   .mac_address, ETH_ALEN))
+   ether_addr_equal_unaligned(bssid, 
priv-curr_bss_params.bss_descriptor.mac_address))
mwifiex_update_curr_bss_params(priv,
   bss);