All of lore.kernel.org
 help / color / mirror / Atom feed
* FAILED: patch "[PATCH] iwlwifi: mvm: use IWL_HCMD_NOCOPY for MCAST_FILTER_CMD" failed to apply to 4.4-stable tree
@ 2017-10-10 15:26 gregkh
  2017-10-11  7:22 ` [PATCH for v4.4] iwlwifi: mvm: use IWL_HCMD_NOCOPY for MCAST_FILTER_CMD Luca Coelho
  0 siblings, 1 reply; 3+ messages in thread
From: gregkh @ 2017-10-10 15:26 UTC (permalink / raw)
  To: luciano.coelho; +Cc: stable


The patch below does not apply to the 4.4-stable tree.
If someone wants it applied there, or to any other stable or longterm
tree, then please email the backport, including the original git commit
id to <stable@vger.kernel.org>.

thanks,

greg k-h

------------------ original commit in Linus's tree ------------------

>From 97bce57bd7f96e1218751996f549a6e61f18cc8c Mon Sep 17 00:00:00 2001
From: Luca Coelho <luciano.coelho@intel.com>
Date: Fri, 1 Sep 2017 17:59:15 +0300
Subject: [PATCH] iwlwifi: mvm: use IWL_HCMD_NOCOPY for MCAST_FILTER_CMD

The MCAST_FILTER_CMD can get quite large when we have many mcast
addresses to set (we support up to 255).  So the command should be
send as NOCOPY to prevent a warning caused by too-long commands:

WARNING: CPU: 0 PID: 9700 at /root/iwlwifi/stack-dev/drivers/net/wireless/intel/iwlwifi/pcie/tx.c:1550 iwl_pcie_enqueue_hcmd+0x8c7/0xb40 [iwlwifi]
Command MCAST_FILTER_CMD (0x1d0) is too large (328 bytes)

This fixes: https://bugzilla.kernel.org/show_bug.cgi?id=196743

Cc: stable@vger.kernel.org
Signed-off-by: Luca Coelho <luciano.coelho@intel.com>

diff --git a/drivers/net/wireless/intel/iwlwifi/mvm/mac80211.c b/drivers/net/wireless/intel/iwlwifi/mvm/mac80211.c
index 3a6ce4222ff5..635db63f972e 100644
--- a/drivers/net/wireless/intel/iwlwifi/mvm/mac80211.c
+++ b/drivers/net/wireless/intel/iwlwifi/mvm/mac80211.c
@@ -1546,6 +1546,11 @@ static void iwl_mvm_mc_iface_iterator(void *_data, u8 *mac,
 	struct iwl_mvm_mc_iter_data *data = _data;
 	struct iwl_mvm *mvm = data->mvm;
 	struct iwl_mcast_filter_cmd *cmd = mvm->mcast_filter_cmd;
+	struct iwl_host_cmd hcmd = {
+		.id = MCAST_FILTER_CMD,
+		.flags = CMD_ASYNC,
+		.dataflags[0] = IWL_HCMD_DFL_NOCOPY,
+	};
 	int ret, len;
 
 	/* if we don't have free ports, mcast frames will be dropped */
@@ -1560,7 +1565,10 @@ static void iwl_mvm_mc_iface_iterator(void *_data, u8 *mac,
 	memcpy(cmd->bssid, vif->bss_conf.bssid, ETH_ALEN);
 	len = roundup(sizeof(*cmd) + cmd->count * ETH_ALEN, 4);
 
-	ret = iwl_mvm_send_cmd_pdu(mvm, MCAST_FILTER_CMD, CMD_ASYNC, len, cmd);
+	hcmd.len[0] = len;
+	hcmd.data[0] = cmd;
+
+	ret = iwl_mvm_send_cmd(mvm, &hcmd);
 	if (ret)
 		IWL_ERR(mvm, "mcast filter cmd error. ret=%d\n", ret);
 }

^ permalink raw reply related	[flat|nested] 3+ messages in thread

* [PATCH for v4.4] iwlwifi: mvm: use IWL_HCMD_NOCOPY for MCAST_FILTER_CMD
  2017-10-10 15:26 FAILED: patch "[PATCH] iwlwifi: mvm: use IWL_HCMD_NOCOPY for MCAST_FILTER_CMD" failed to apply to 4.4-stable tree gregkh
@ 2017-10-11  7:22 ` Luca Coelho
  2017-10-12 11:46   ` Greg KH
  0 siblings, 1 reply; 3+ messages in thread
From: Luca Coelho @ 2017-10-11  7:22 UTC (permalink / raw)
  To: gregkh; +Cc: stable, luciano.coelho

From: Luca Coelho <luciano.coelho@intel.com>

commit 97bce57bd7f96e1218751996f549a6e61f18cc8c upstream.

The MCAST_FILTER_CMD can get quite large when we have many mcast
addresses to set (we support up to 255).  So the command should be
send as NOCOPY to prevent a warning caused by too-long commands:

WARNING: CPU: 0 PID: 9700 at /root/iwlwifi/stack-dev/drivers/net/wireless/intel/iwlwifi/pcie/tx.c:1550 iwl_pcie_enqueue_hcmd+0x8c7/0xb40 [iwlwifi]
Command MCAST_FILTER_CMD (0x1d0) is too large (328 bytes)

This fixes: https://bugzilla.kernel.org/show_bug.cgi?id=196743

Cc: stable@vger.kernel.org
Signed-off-by: Luca Coelho <luciano.coelho@intel.com>
---
 drivers/net/wireless/iwlwifi/mvm/mac80211.c | 10 +++++++++-
 1 file changed, 9 insertions(+), 1 deletion(-)

diff --git a/drivers/net/wireless/iwlwifi/mvm/mac80211.c b/drivers/net/wireless/iwlwifi/mvm/mac80211.c
index 1a8ea775de08..984cd2f05c4a 100644
--- a/drivers/net/wireless/iwlwifi/mvm/mac80211.c
+++ b/drivers/net/wireless/iwlwifi/mvm/mac80211.c
@@ -1906,6 +1906,11 @@ static void iwl_mvm_mc_iface_iterator(void *_data, u8 *mac,
 	struct iwl_mvm_mc_iter_data *data = _data;
 	struct iwl_mvm *mvm = data->mvm;
 	struct iwl_mcast_filter_cmd *cmd = mvm->mcast_filter_cmd;
+	struct iwl_host_cmd hcmd = {
+		.id = MCAST_FILTER_CMD,
+		.flags = CMD_ASYNC,
+		.dataflags[0] = IWL_HCMD_DFL_NOCOPY,
+	};
 	int ret, len;
 
 	/* if we don't have free ports, mcast frames will be dropped */
@@ -1920,7 +1925,10 @@ static void iwl_mvm_mc_iface_iterator(void *_data, u8 *mac,
 	memcpy(cmd->bssid, vif->bss_conf.bssid, ETH_ALEN);
 	len = roundup(sizeof(*cmd) + cmd->count * ETH_ALEN, 4);
 
-	ret = iwl_mvm_send_cmd_pdu(mvm, MCAST_FILTER_CMD, CMD_ASYNC, len, cmd);
+	hcmd.len[0] = len;
+	hcmd.data[0] = cmd;
+
+	ret = iwl_mvm_send_cmd(mvm, &hcmd);
 	if (ret)
 		IWL_ERR(mvm, "mcast filter cmd error. ret=%d\n", ret);
 }
-- 
2.14.2

^ permalink raw reply related	[flat|nested] 3+ messages in thread

* Re: [PATCH for v4.4] iwlwifi: mvm: use IWL_HCMD_NOCOPY for MCAST_FILTER_CMD
  2017-10-11  7:22 ` [PATCH for v4.4] iwlwifi: mvm: use IWL_HCMD_NOCOPY for MCAST_FILTER_CMD Luca Coelho
@ 2017-10-12 11:46   ` Greg KH
  0 siblings, 0 replies; 3+ messages in thread
From: Greg KH @ 2017-10-12 11:46 UTC (permalink / raw)
  To: Luca Coelho; +Cc: stable, luciano.coelho

On Wed, Oct 11, 2017 at 10:22:40AM +0300, Luca Coelho wrote:
> From: Luca Coelho <luciano.coelho@intel.com>
> 
> commit 97bce57bd7f96e1218751996f549a6e61f18cc8c upstream.
> 
> The MCAST_FILTER_CMD can get quite large when we have many mcast
> addresses to set (we support up to 255).  So the command should be
> send as NOCOPY to prevent a warning caused by too-long commands:
> 
> WARNING: CPU: 0 PID: 9700 at /root/iwlwifi/stack-dev/drivers/net/wireless/intel/iwlwifi/pcie/tx.c:1550 iwl_pcie_enqueue_hcmd+0x8c7/0xb40 [iwlwifi]
> Command MCAST_FILTER_CMD (0x1d0) is too large (328 bytes)
> 
> This fixes: https://bugzilla.kernel.org/show_bug.cgi?id=196743
> 
> Cc: stable@vger.kernel.org
> Signed-off-by: Luca Coelho <luciano.coelho@intel.com>
> ---
>  drivers/net/wireless/iwlwifi/mvm/mac80211.c | 10 +++++++++-
>  1 file changed, 9 insertions(+), 1 deletion(-)

Thanks for the patch, now queued up.

greg k-h

^ permalink raw reply	[flat|nested] 3+ messages in thread

end of thread, other threads:[~2017-10-12 11:45 UTC | newest]

Thread overview: 3+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2017-10-10 15:26 FAILED: patch "[PATCH] iwlwifi: mvm: use IWL_HCMD_NOCOPY for MCAST_FILTER_CMD" failed to apply to 4.4-stable tree gregkh
2017-10-11  7:22 ` [PATCH for v4.4] iwlwifi: mvm: use IWL_HCMD_NOCOPY for MCAST_FILTER_CMD Luca Coelho
2017-10-12 11:46   ` Greg KH

This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.