diff options
author | Johannes Berg <johannes.berg@intel.com> | 2012-10-19 14:24:43 +0200 |
---|---|---|
committer | Johannes Berg <johannes.berg@intel.com> | 2012-10-29 11:27:05 +0100 |
commit | f4feb8ac6e666d2ca37cf722166bbfadf2c6adf8 (patch) | |
tree | 950d1e7ab7ef3098f41b095f4e59d65520c6aeea /drivers/net/wireless/iwlwifi/pcie/rx.c | |
parent | 86052a77067df53ad48800e74984f84806baddbd (diff) |
iwlwifi: support host command with copied data
In addition to the NOCOPY flag, add a DUP flag that
tells the transport to kmemdup() the buffer and free
it after the command completes.
Currently this is only supported for a single buffer
in a given command, but that could be extended if it
should be needed.
Reviewed-by: Emmanuel Grumbach <emmanuel.grumbach@intel.com>
Signed-off-by: Johannes Berg <johannes.berg@intel.com>
Diffstat (limited to 'drivers/net/wireless/iwlwifi/pcie/rx.c')
-rw-r--r-- | drivers/net/wireless/iwlwifi/pcie/rx.c | 3 |
1 files changed, 3 insertions, 0 deletions
diff --git a/drivers/net/wireless/iwlwifi/pcie/rx.c b/drivers/net/wireless/iwlwifi/pcie/rx.c index 137af4c46a6..3f03f6e322c 100644 --- a/drivers/net/wireless/iwlwifi/pcie/rx.c +++ b/drivers/net/wireless/iwlwifi/pcie/rx.c @@ -452,6 +452,9 @@ static void iwl_rx_handle_rxbuf(struct iwl_trans *trans, /* The original command isn't needed any more */ kfree(txq->entries[cmd_index].copy_cmd); txq->entries[cmd_index].copy_cmd = NULL; + /* nor is the duplicated part of the command */ + kfree(txq->entries[cmd_index].free_buf); + txq->entries[cmd_index].free_buf = NULL; } /* |