[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <87futi858q.fsf@kamboji.qca.qualcomm.com>
Date: Mon, 16 May 2016 17:08:53 +0300
From: Kalle Valo <kvalo@...eaurora.org>
To: David Miller <davem@...emloft.net>
Cc: linux-wireless@...r.kernel.org, netdev@...r.kernel.org,
luciano.coelho@...el.com, emmanuel.grumbach@...el.com
Subject: Re: pull-request: wireless-drivers-next 2016-05-13
Kalle Valo <kvalo@...eaurora.org> writes:
> Kalle Valo <kvalo@...eaurora.org> writes:
>
>> The following changes since commit ede00a5ceb4d903a8c137a52bb77d574baaef8bd:
>>
>> Merge tag 'wireless-drivers-next-for-davem-2016-05-02' of git://git.kernel.org/pub/scm/linux/kernel/git/kvalo/wireless-drivers-next (2016-05-03 00:35:16 -0400)
>>
>> are available in the git repository at:
>>
>>
>> git://git.kernel.org/pub/scm/linux/kernel/git/kvalo/wireless-drivers-next.git tags/wireless-drivers-next-for-davem-2016-05-13
>
> Please don't pull this yet, there might be something wrong now with
> merges and need to check that first.
Ok, like discussed in thread "linux-next: manual merge of the
wireless-drivers-next tree with the net-next tree" there seems to be a
problem on net-next in function iwl_mvm_set_tx_cmd(). Here is how I
propose to fix this.
When pulling the tag above you should get a conflict like this:
diff --cc drivers/net/wireless/intel/iwlwifi/mvm/tx.c
index 880210917a6f,779bafcbc9a1..000000000000
--- a/drivers/net/wireless/intel/iwlwifi/mvm/tx.c
+++ b/drivers/net/wireless/intel/iwlwifi/mvm/tx.c
@@@ -294,7 -295,7 +294,11 @@@ void iwl_mvm_set_tx_cmd(struct iwl_mvm
tx_cmd->tx_flags = cpu_to_le32(tx_flags);
/* Total # bytes to be transmitted */
tx_cmd->len = cpu_to_le16((u16)skb->len +
++<<<<<<< HEAD
+ (uintptr_t)info->driver_data[0]);
++=======
+ (uintptr_t)skb_info->driver_data[0]);
++>>>>>>> master
tx_cmd->life_time = cpu_to_le32(TX_CMD_LIFE_TIME_INFINITE);
tx_cmd->sta_id = sta_id;
Pick the latter with skb_info and then add skb_info to the beginning of
the same function. So the function should be:
void iwl_mvm_set_tx_cmd(struct iwl_mvm *mvm, struct sk_buff *skb,
struct iwl_tx_cmd *tx_cmd,
struct ieee80211_tx_info *info, u8 sta_id)
{
struct ieee80211_tx_info *skb_info = IEEE80211_SKB_CB(skb);
struct ieee80211_hdr *hdr = (void *)skb->data;
__le16 fc = hdr->frame_control;
u32 tx_flags = le32_to_cpu(tx_cmd->tx_flags);
u32 len = skb->len + FCS_LEN;
u8 ac;
[...]
tx_cmd->tx_flags = cpu_to_le32(tx_flags);
/* Total # bytes to be transmitted */
tx_cmd->len = cpu_to_le16((u16)skb->len +
(uintptr_t)skb_info->driver_data[0]);
tx_cmd->life_time = cpu_to_le32(TX_CMD_LIFE_TIME_INFINITE);
tx_cmd->sta_id = sta_id;
Sorry about the hassle and please let me know if you have any problems.
Adding Luca and Emmanuel just in case I missed something.
--
Kalle Valo
Powered by blists - more mailing lists