Messages in this thread Patch in this message | | | Subject | Re: Re: [PATCH 3.4 93/99] iwlwifi: always copy first 16 bytes of commands | From | Ben Hutchings <> | Date | Tue, 25 Mar 2014 02:55:17 +0000 |
| |
On Sat, 2014-03-22 at 22:01 +0100, Andreas Sturmlechner wrote: > Original Message from: Ben Hutchings <ben@decadent.org.uk> > > > > Andreas, could you test whether this regression is also present in > > 3.2.55? This patch is based on my backport for 3.2.y. > > > > 3.2.55 is OK here.
One piece of my backport to 3.2.y went missing in the forward-port to 3.4.y. Can you test 3.4.83 with this patch on top?
Ben.
--- From: Ben Hutchings <ben@decadent.org.uk> Date: Tue, 25 Mar 2014 02:49:14 +0000 Subject: iwlwifi: Complete backport of "iwlwifi: always copy first 16 bytes of commands"
Linux 3.4.83 included an incomplete backport of commit 8a964f44e01ad3bbc208c3e80d931ba91b9ea786 ('iwlwifi: always copy first 16 bytes of commands') which causes a regression for this driver. This is the missing piece.
Reported-by: Andreas Sturmlechner <andreas.sturmlechner@gmail.com> Cc: Johannes Berg <johannes.berg@intel.com> Cc: Emmanuel Grumbach <emmanuel.grumbach@intel.com> Cc: Jianguo Wu <wujianguo@huawei.com> Signed-off-by: Ben Hutchings <ben@decadent.org.uk> --- --- a/drivers/net/wireless/iwlwifi/iwl-trans-pcie-tx.c +++ b/drivers/net/wireless/iwlwifi/iwl-trans-pcie-tx.c @@ -825,14 +825,15 @@ static int iwl_enqueue_hcmd(struct iwl_trans *trans, struct iwl_host_cmd *cmd) trace_idx = 1; #endif + /* map the remaining (adjusted) nocopy/dup fragments */ for (i = 0; i < IWL_MAX_CMD_TFDS; i++) { - if (!cmd->len[i]) + if (!cmdlen[i]) continue; if (!(cmd->dataflags[i] & IWL_HCMD_DFL_NOCOPY)) continue; phys_addr = dma_map_single(trans->dev, - (void *)cmd->data[i], - cmd->len[i], DMA_BIDIRECTIONAL); + (void *)cmddata[i], + cmdlen[i], DMA_BIDIRECTIONAL); if (dma_mapping_error(trans->dev, phys_addr)) { iwlagn_unmap_tfd(trans, out_meta, &txq->tfds[q->write_ptr],
-- Ben Hutchings Make three consecutive correct guesses and you will be considered an expert. [unhandled content-type:application/pgp-signature] | |