Re: [PATCH] rsi: fix memory leak in debugfs entry and supported bands

2016-09-19 Thread Heinrich Schuchardt
On 09/19/2016 12:51 PM, Prameela Rani Garnepudi wrote:
> From: Prameela Rani Garnepudi 
> 
> Signed-off-by: Prameela Rani Garnepudi 
> ---
>  drivers/net/wireless/rsi/rsi_91x_mac80211.c | 10 ++
>  1 file changed, 10 insertions(+)
> 
> diff --git a/drivers/net/wireless/rsi/rsi_91x_mac80211.c 
> b/drivers/net/wireless/rsi/rsi_91x_mac80211.c
> index dbb2389..dc64532 100644
> --- a/drivers/net/wireless/rsi/rsi_91x_mac80211.c
> +++ b/drivers/net/wireless/rsi/rsi_91x_mac80211.c
> @@ -194,6 +194,7 @@ static void rsi_register_rates_channels(struct rsi_hw 
> *adapter, int band)
>  void rsi_mac80211_detach(struct rsi_hw *adapter)
>  {
>   struct ieee80211_hw *hw = adapter->hw;
> + int i;
>  
>   if (hw) {
>   ieee80211_stop_queues(hw);
> @@ -201,7 +202,16 @@ void rsi_mac80211_detach(struct rsi_hw *adapter)
>   ieee80211_free_hw(hw);
>   }
>  
> + for (i = 0; i < 2; i++) {
> + struct ieee80211_supported_band *sbands = >sbands[i];
> +
> + kfree(sbands->channels);
> + }
> +
> +#ifdef CONFIG_RSI_DEBUGFS
>   rsi_remove_dbgfs(adapter);
> + kfree(adapter->dfsentry);
> +#endif
>  }
>  EXPORT_SYMBOL_GPL(rsi_mac80211_detach);
>  
> 

Please, use
  git format-patch -ns HEAD~1..HEAD
to create the patch message and
  git send-email
to post your patch including your commit message.

Best regards

Heinrich


[PATCH 1/1 v2] rtlwifi: remove superfluous condition

2016-08-02 Thread Heinrich Schuchardt
If sta == NULL, the changed line will not be reached.
So no need to check that sta != NULL here.

v2:
fix typo

Signed-off-by: Heinrich Schuchardt <xypron.g...@gmx.de>
Acked-by: Larry Finger <larry.fin...@lwfinger.net>
---
 drivers/net/wireless/realtek/rtlwifi/core.c | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/drivers/net/wireless/realtek/rtlwifi/core.c 
b/drivers/net/wireless/realtek/rtlwifi/core.c
index 41f77f8..7aee5ebb1 100644
--- a/drivers/net/wireless/realtek/rtlwifi/core.c
+++ b/drivers/net/wireless/realtek/rtlwifi/core.c
@@ -1135,7 +1135,7 @@ static void rtl_op_bss_info_changed(struct ieee80211_hw 
*hw,
mac->mode = WIRELESS_MODE_AC_24G;
}
 
-   if (vif->type == NL80211_IFTYPE_STATION && sta)
+   if (vif->type == NL80211_IFTYPE_STATION)
rtlpriv->cfg->ops->update_rate_tbl(hw, sta, 0);
rcu_read_unlock();
 
-- 
2.1.4

--
To unsubscribe from this list: send the line "unsubscribe linux-wireless" in
the body of a message to majord...@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html


[PATCH 1/1] mwifiex: key_material_v2 remove superfluous condition

2016-07-31 Thread Heinrich Schuchardt
We are using mac as source address in a memcpy.
In the lines below we can assume mac is not NULL.

Signed-off-by: Heinrich Schuchardt <xypron.g...@gmx.de>
---
 drivers/net/wireless/marvell/mwifiex/sta_cmd.c | 11 +++
 1 file changed, 3 insertions(+), 8 deletions(-)

diff --git a/drivers/net/wireless/marvell/mwifiex/sta_cmd.c 
b/drivers/net/wireless/marvell/mwifiex/sta_cmd.c
index 128add8..0d4f9fe 100644
--- a/drivers/net/wireless/marvell/mwifiex/sta_cmd.c
+++ b/drivers/net/wireless/marvell/mwifiex/sta_cmd.c
@@ -706,15 +706,10 @@ mwifiex_cmd_802_11_key_material_v2(struct mwifiex_private 
*priv,
(priv->wep_key_curr_index & KEY_INDEX_MASK))
key_info |= KEY_DEFAULT;
} else {
-   if (mac) {
-   if (is_broadcast_ether_addr(mac))
-   key_info |= KEY_MCAST;
-   else
-   key_info |= KEY_UNICAST |
-   KEY_DEFAULT;
-   } else {
+   if (is_broadcast_ether_addr(mac))
key_info |= KEY_MCAST;
-   }
+   else
+   key_info |= KEY_UNICAST | KEY_DEFAULT;
}
}
km->key_param_set.key_info = cpu_to_le16(key_info);
-- 
2.8.1

--
To unsubscribe from this list: send the line "unsubscribe linux-wireless" in
the body of a message to majord...@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html


[PATCH 1/1] mwifiex: remove superfluous condition (2)

2016-07-31 Thread Heinrich Schuchardt
We are using mac as source address in a memcpy.
In the lines below we can assume mac is not NULL.

Signed-off-by: Heinrich Schuchardt <xypron.g...@gmx.de>
---
 drivers/net/wireless/marvell/mwifiex/sta_cmd.c | 11 +++
 1 file changed, 3 insertions(+), 8 deletions(-)

diff --git a/drivers/net/wireless/marvell/mwifiex/sta_cmd.c 
b/drivers/net/wireless/marvell/mwifiex/sta_cmd.c
index 128add8..0d4f9fe 100644
--- a/drivers/net/wireless/marvell/mwifiex/sta_cmd.c
+++ b/drivers/net/wireless/marvell/mwifiex/sta_cmd.c
@@ -706,15 +706,10 @@ mwifiex_cmd_802_11_key_material_v2(struct mwifiex_private 
*priv,
(priv->wep_key_curr_index & KEY_INDEX_MASK))
key_info |= KEY_DEFAULT;
} else {
-   if (mac) {
-   if (is_broadcast_ether_addr(mac))
-   key_info |= KEY_MCAST;
-   else
-   key_info |= KEY_UNICAST |
-   KEY_DEFAULT;
-   } else {
+   if (is_broadcast_ether_addr(mac))
key_info |= KEY_MCAST;
-   }
+   else
+   key_info |= KEY_UNICAST | KEY_DEFAULT;
}
}
km->key_param_set.key_info = cpu_to_le16(key_info);
-- 
2.8.1

--
To unsubscribe from this list: send the line "unsubscribe linux-wireless" in
the body of a message to majord...@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html


[PATCH 1/1] mwifiex: remove superfluous condition

2016-07-31 Thread Heinrich Schuchardt
for_each_property_of_node is only executed if the
property prop is not NULL.

Signed-off-by: Heinrich Schuchardt <xypron.g...@gmx.de>
---
 drivers/net/wireless/marvell/mwifiex/sta_cmd.c | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/drivers/net/wireless/marvell/mwifiex/sta_cmd.c 
b/drivers/net/wireless/marvell/mwifiex/sta_cmd.c
index 7897037..128add8 100644
--- a/drivers/net/wireless/marvell/mwifiex/sta_cmd.c
+++ b/drivers/net/wireless/marvell/mwifiex/sta_cmd.c
@@ -1482,7 +1482,7 @@ int mwifiex_dnld_dt_cfgdata(struct mwifiex_private *priv,
continue;
 
/* property header is 6 bytes, data must fit in cmd buffer */
-   if (prop && prop->value && prop->length > 6 &&
+   if (prop->value && prop->length > 6 &&
prop->length <= MWIFIEX_SIZE_OF_CMD_BUFFER - S_DS_GEN) {
ret = mwifiex_send_cmd(priv, HostCmd_CMD_CFG_DATA,
   HostCmd_ACT_GEN_SET, 0,
-- 
2.8.1

--
To unsubscribe from this list: send the line "unsubscribe linux-wireless" in
the body of a message to majord...@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html


[PATCH 1/1] rtlwifi: remove superfluous condition

2016-07-31 Thread Heinrich Schuchardt
If sta == NULL, the changed line will not be reached.
So no need to check if stat == NULL here.

Signed-off-by: Heinrich Schuchardt <xypron.g...@gmx.de>
---
 drivers/net/wireless/realtek/rtlwifi/core.c | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/drivers/net/wireless/realtek/rtlwifi/core.c 
b/drivers/net/wireless/realtek/rtlwifi/core.c
index 41f77f8..7aee5ebb1 100644
--- a/drivers/net/wireless/realtek/rtlwifi/core.c
+++ b/drivers/net/wireless/realtek/rtlwifi/core.c
@@ -1135,7 +1135,7 @@ static void rtl_op_bss_info_changed(struct ieee80211_hw 
*hw,
mac->mode = WIRELESS_MODE_AC_24G;
}
 
-   if (vif->type == NL80211_IFTYPE_STATION && sta)
+   if (vif->type == NL80211_IFTYPE_STATION)
rtlpriv->cfg->ops->update_rate_tbl(hw, sta, 0);
rcu_read_unlock();
 
-- 
2.8.1

--
To unsubscribe from this list: send the line "unsubscribe linux-wireless" in
the body of a message to majord...@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html


[PATCH 1/1] brcm80211: simplify assignment

2016-05-17 Thread Heinrich Schuchardt
Simplify assignment in wlc_phy_rxcal_gainctrl_nphy_rev5.

Signed-off-by: Heinrich Schuchardt <xypron.g...@gmx.de>
---
 drivers/net/wireless/broadcom/brcm80211/brcmsmac/phy/phy_n.c | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/drivers/net/wireless/broadcom/brcm80211/brcmsmac/phy/phy_n.c 
b/drivers/net/wireless/broadcom/brcm80211/brcmsmac/phy/phy_n.c
index 99dac9b..b3aab2f 100644
--- a/drivers/net/wireless/broadcom/brcm80211/brcmsmac/phy/phy_n.c
+++ b/drivers/net/wireless/broadcom/brcm80211/brcmsmac/phy/phy_n.c
@@ -27017,7 +27017,7 @@ wlc_phy_rxcal_gainctrl_nphy_rev5(struct brcms_phy *pi, 
u8 rx_core,
tx_core = 1 - rx_core;
 
num_samps = 1024;
-   desired_log2_pwr = (cal_type == 0) ? 13 : 13;
+   desired_log2_pwr = 13;
 
wlc_phy_rx_iq_coeffs_nphy(pi, 0, _comp);
zero_comp.a0 = zero_comp.b0 = zero_comp.a1 = zero_comp.b1 = 0x0;
-- 
2.1.4

--
To unsubscribe from this list: send the line "unsubscribe linux-wireless" in
the body of a message to majord...@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html


[PATCH 1/1] rtlwifi: rtl8192ee: simplify coding

2016-05-17 Thread Heinrich Schuchardt
Simplify _rtl92ee_phy_path_adda_on.

Signed-off-by: Heinrich Schuchardt <xypron.g...@gmx.de>
---
 drivers/net/wireless/realtek/rtlwifi/rtl8192ee/phy.c | 13 ++---
 1 file changed, 2 insertions(+), 11 deletions(-)

diff --git a/drivers/net/wireless/realtek/rtlwifi/rtl8192ee/phy.c 
b/drivers/net/wireless/realtek/rtlwifi/rtl8192ee/phy.c
index 018340a..c2bf8d1 100644
--- a/drivers/net/wireless/realtek/rtlwifi/rtl8192ee/phy.c
+++ b/drivers/net/wireless/realtek/rtlwifi/rtl8192ee/phy.c
@@ -2414,19 +2414,10 @@ static void _rtl92ee_phy_reload_mac_registers(struct 
ieee80211_hw *hw,
 static void _rtl92ee_phy_path_adda_on(struct ieee80211_hw *hw, u32 *addareg,
  bool is_patha_on, bool is2t)
 {
-   u32 pathon;
u32 i;
 
-   pathon = is_patha_on ? 0x0fc01616 : 0x0fc01616;
-   if (!is2t) {
-   pathon = 0x0fc01616;
-   rtl_set_bbreg(hw, addareg[0], MASKDWORD, 0x0fc01616);
-   } else {
-   rtl_set_bbreg(hw, addareg[0], MASKDWORD, pathon);
-   }
-
-   for (i = 1; i < IQK_ADDA_REG_NUM; i++)
-   rtl_set_bbreg(hw, addareg[i], MASKDWORD, pathon);
+   for (i = 0; i < IQK_ADDA_REG_NUM; i++)
+   rtl_set_bbreg(hw, addareg[i], MASKDWORD, 0x0fc01616);
 }
 
 static void _rtl92ee_phy_mac_setting_calibration(struct ieee80211_hw *hw,
-- 
2.1.4

--
To unsubscribe from this list: send the line "unsubscribe linux-wireless" in
the body of a message to majord...@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html


[PATCH] wifi: ath6kl: simplify logical condition

2016-05-17 Thread Heinrich Schuchardt
x <= 7 implies x < 8.

Signed-off-by: Heinrich Schuchardt <xypron.g...@gmx.de>
---
 drivers/net/wireless/ath/ath6kl/wmi.c | 3 +--
 1 file changed, 1 insertion(+), 2 deletions(-)

diff --git a/drivers/net/wireless/ath/ath6kl/wmi.c 
b/drivers/net/wireless/ath/ath6kl/wmi.c
index 631c3a0..b8cf04d 100644
--- a/drivers/net/wireless/ath/ath6kl/wmi.c
+++ b/drivers/net/wireless/ath/ath6kl/wmi.c
@@ -2544,8 +2544,7 @@ int ath6kl_wmi_create_pstream_cmd(struct wmi *wmi, u8 
if_idx,
s32 nominal_phy = 0;
int ret;
 
-   if (!((params->user_pri < 8) &&
- (params->user_pri <= 0x7) &&
+   if (!((params->user_pri <= 0x7) &&
  (up_to_ac[params->user_pri & 0x7] == params->traffic_class) &&
  (params->traffic_direc == UPLINK_TRAFFIC ||
   params->traffic_direc == DNLINK_TRAFFIC ||
-- 
2.1.4

--
To unsubscribe from this list: send the line "unsubscribe linux-wireless" in
the body of a message to majord...@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html


[PATCH 1/1] iwlwifi: rs: remove superfluous check

2016-05-17 Thread Heinrich Schuchardt
If we dereference a variable anyway in other parts of the code,
there is no need to check against NULL in a single place.

Signed-off-by: Heinrich Schuchardt <xypron.g...@gmx.de>
---
 drivers/net/wireless/intel/iwlwifi/mvm/rs.c | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/drivers/net/wireless/intel/iwlwifi/mvm/rs.c 
b/drivers/net/wireless/intel/iwlwifi/mvm/rs.c
index 81dd2f6..bab01ea 100644
--- a/drivers/net/wireless/intel/iwlwifi/mvm/rs.c
+++ b/drivers/net/wireless/intel/iwlwifi/mvm/rs.c
@@ -2867,7 +2867,7 @@ static void rs_get_rate(void *mvm_r, struct ieee80211_sta 
*sta, void *mvm_sta,
/* TODO: handle rate_idx_mask and rate_idx_mcs_mask */
 
/* Treat uninitialized rate scaling data same as non-existing. */
-   if (lq_sta && !lq_sta->pers.drv) {
+   if (!lq_sta->pers.drv) {
IWL_DEBUG_RATE(mvm, "Rate scaling not initialized yet.\n");
mvm_sta = NULL;
}
-- 
2.1.4

--
To unsubscribe from this list: send the line "unsubscribe linux-wireless" in
the body of a message to majord...@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html


[PATCH 1/1] mwiflex: avoid possible null pointer dereference

2016-05-17 Thread Heinrich Schuchardt
Do not dereference card before checking against NULL value.

Signed-off-by: Heinrich Schuchardt <xypron.g...@gmx.de>
---
 drivers/net/wireless/marvell/mwifiex/pcie.c | 3 ++-
 1 file changed, 2 insertions(+), 1 deletion(-)

diff --git a/drivers/net/wireless/marvell/mwifiex/pcie.c 
b/drivers/net/wireless/marvell/mwifiex/pcie.c
index 0c7937e..ae1f79e 100644
--- a/drivers/net/wireless/marvell/mwifiex/pcie.c
+++ b/drivers/net/wireless/marvell/mwifiex/pcie.c
@@ -2901,10 +2901,11 @@ static void mwifiex_unregister_dev(struct 
mwifiex_adapter *adapter)
 {
struct pcie_service_card *card = adapter->card;
const struct mwifiex_pcie_card_reg *reg;
-   struct pci_dev *pdev = card->dev;
+   struct pci_dev *pdev;
int i;
 
if (card) {
+   pdev = card->dev;
if (card->msix_enable) {
for (i = 0; i < MWIFIEX_NUM_MSIX_VECTORS; i++)
synchronize_irq(card->msix_entries[i].vector);
-- 
2.1.4

--
To unsubscribe from this list: send the line "unsubscribe linux-wireless" in
the body of a message to majord...@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html


[PATCH 1/1] mwifiex: illegal assignment

2016-05-17 Thread Heinrich Schuchardt
Variable adapter is incorrectly initialized.

Fixes: bf00dc22bc7a ("mwifiex: AMSDU Rx frame handling in AP mode")
Signed-off-by: Heinrich Schuchardt <xypron.g...@gmx.de>
---
 drivers/net/wireless/marvell/mwifiex/uap_txrx.c | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/drivers/net/wireless/marvell/mwifiex/uap_txrx.c 
b/drivers/net/wireless/marvell/mwifiex/uap_txrx.c
index 666e91a..bf5660e 100644
--- a/drivers/net/wireless/marvell/mwifiex/uap_txrx.c
+++ b/drivers/net/wireless/marvell/mwifiex/uap_txrx.c
@@ -272,7 +272,7 @@ int mwifiex_handle_uap_rx_forward(struct mwifiex_private 
*priv,
 int mwifiex_uap_recv_packet(struct mwifiex_private *priv,
struct sk_buff *skb)
 {
-   struct mwifiex_adapter *adapter = adapter;
+   struct mwifiex_adapter *adapter = priv->adapter;
struct mwifiex_sta_node *src_node;
struct ethhdr *p_ethhdr;
struct sk_buff *skb_uap;
-- 
2.1.4

--
To unsubscribe from this list: send the line "unsubscribe linux-wireless" in
the body of a message to majord...@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html


[PATCH 1/1] net: rsi: eliminate superfluous NULL check

2016-05-17 Thread Heinrich Schuchardt
msg is dereferenced before checking against NULL, e.g.
when assigning pad_bytes.
Remove the superfluous check in function rsi_mgmt_pkt_to_core.

Signed-off-by: Heinrich Schuchardt <xypron.g...@gmx.de>
---
 drivers/net/wireless/rsi/rsi_91x_mgmt.c | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/drivers/net/wireless/rsi/rsi_91x_mgmt.c 
b/drivers/net/wireless/rsi/rsi_91x_mgmt.c
index 40658b6..35c14cc 100644
--- a/drivers/net/wireless/rsi/rsi_91x_mgmt.c
+++ b/drivers/net/wireless/rsi/rsi_91x_mgmt.c
@@ -398,7 +398,7 @@ static int rsi_mgmt_pkt_to_core(struct rsi_common *common,
return -ENOLINK;
 
msg_len -= pad_bytes;
-   if ((msg_len <= 0) || (!msg)) {
+   if (msg_len <= 0) {
rsi_dbg(MGMT_RX_ZONE,
"%s: Invalid rx msg of len = %d\n",
__func__, msg_len);
-- 
2.1.4

--
To unsubscribe from this list: send the line "unsubscribe linux-wireless" in
the body of a message to majord...@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html