On Mon, 2016-05-16 at 17:08 +0300, Kalle Valo wrote: > Kalle Valo <kv...@codeaurora.org> writes: > > > > > Kalle Valo <kv...@codeaurora.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.
ACK. This looks correct. I just diffed the iwlwifi-next.git tree (at commit a525d0eab17d -- which is where I merge iwlwifi-fixes into iwlwifi-next) with net-next.git master and the difference [1] is exactly what you proposed to fix. [1] http://pastebin.coelho.fi/1b6907cdb9a25413.txt -- Cheers, Luca.