Message ID | 20230331104959.0b30604d@canb.auug.org.au (mailing list archive) |
---|---|
State | Not Applicable |
Delegated to: | Johannes Berg |
Headers | show |
Series | linux-next: manual merge of the wireless-next tree with the wireless tree | expand |
On Fri, 2023-03-31 at 10:49 +1100, Stephen Rothwell wrote: > Hi all, > > Today's linux-next merge of the wireless-next tree got a conflict in: > > net/mac80211/rx.c > > between commit: > > a16fc38315f2 ("wifi: mac80211: fix potential null pointer dereference") > > from the wireless tree and commit: > > fe4a6d2db3ba ("wifi: mac80211: implement support for yet another mesh A-MSDU format") > > from the wireless-next tree. Thanks for the heads-up. I sort of expected this, but didn't want to do a merge or wireless into wireless-next before it was pulled, maybe I should've staggered the pull requests, but you would've seen the merge issue anyway. Anyway, I've now pulled wireless into wireless-next, so you might continue seeing this issue (*) if you merge net/net-next before merging wireless-next, but it'll be completely resolved when we send the next pull request to net-next (next week). Thanks! (*) and another one in nl80211 policy, I think? joahnnes
Hi all, On Fri, 31 Mar 2023 10:49:59 +1100 Stephen Rothwell <sfr@canb.auug.org.au> wrote: > > Today's linux-next merge of the wireless-next tree got a conflict in: > > net/mac80211/rx.c > > between commit: > > a16fc38315f2 ("wifi: mac80211: fix potential null pointer dereference") > > from the wireless tree and commit: > > fe4a6d2db3ba ("wifi: mac80211: implement support for yet another mesh A-MSDU format") > > from the wireless-next tree. > > I fixed it up (see below) and can carry the fix as necessary. This > is now fixed as far as linux-next is concerned, but any non trivial > conflicts should be mentioned to your upstream maintainer when your tree > is submitted for merging. You may also want to consider cooperating > with the maintainer of the conflicting tree to minimise any particularly > complex conflicts. > > -- > Cheers, > Stephen Rothwell > > diff --cc net/mac80211/rx.c > index 3e2176a730e6,1c957194554b..000000000000 > --- a/net/mac80211/rx.c > +++ b/net/mac80211/rx.c > @@@ -2776,27 -2862,12 +2843,31 @@@ ieee80211_rx_mesh_data(struct ieee80211 > rcu_read_unlock(); > } > > + /* Frame has reached destination. Don't forward */ > + if (ether_addr_equal(sdata->vif.addr, eth->h_dest)) > + goto rx_accept; > + > + if (!--mesh_hdr->ttl) { > + if (multicast) > + goto rx_accept; > + > + IEEE80211_IFSTA_MESH_CTR_INC(ifmsh, dropped_frames_ttl); > + return RX_DROP_MONITOR; > + } > + > + if (!ifmsh->mshcfg.dot11MeshForwarding) { > + if (is_multicast_ether_addr(eth->h_dest)) > + goto rx_accept; > + > + return RX_DROP_MONITOR; > + } > + > skb_set_queue_mapping(skb, ieee802_1d_to_ac[skb->priority]); > > + if (!multicast && > + ieee80211_rx_mesh_fast_forward(sdata, skb, mesh_hdrlen)) > + return RX_QUEUED; > + > ieee80211_fill_mesh_addresses(&hdr, &hdr.frame_control, > eth->h_dest, eth->h_source); > hdrlen = ieee80211_hdrlen(hdr.frame_control); > @@@ -2914,14 -2982,24 +2985,24 @@@ __ieee80211_rx_h_amsdu(struct ieee80211 > data_offset, true)) > return RX_DROP_UNUSABLE; > > - if (rx->sta && rx->sta->amsdu_mesh_control < 0) { > + if (rx->sta->amsdu_mesh_control < 0) { > - bool valid_std = ieee80211_is_valid_amsdu(skb, true); > - bool valid_nonstd = ieee80211_is_valid_amsdu(skb, false); > + s8 valid = -1; > + int i; > + > + for (i = 0; i <= 2; i++) { > + if (!ieee80211_is_valid_amsdu(skb, i)) > + continue; > + > + if (valid >= 0) { > + /* ambiguous */ > + valid = -1; > + break; > + } > > - if (valid_std && !valid_nonstd) > - rx->sta->amsdu_mesh_control = 1; > - else if (valid_nonstd && !valid_std) > - rx->sta->amsdu_mesh_control = 0; > + valid = i; > + } > + > + rx->sta->amsdu_mesh_control = valid; > } > > ieee80211_amsdu_to_8023s(skb, &frame_list, dev->dev_addr, This is now a conflict between the net-next and net trees.
Stephen Rothwell <sfr@canb.auug.org.au> writes: > Hi all, > > On Fri, 31 Mar 2023 10:49:59 +1100 Stephen Rothwell <sfr@canb.auug.org.au> wrote: >> >> Today's linux-next merge of the wireless-next tree got a conflict in: >> >> net/mac80211/rx.c >> >> between commit: >> >> a16fc38315f2 ("wifi: mac80211: fix potential null pointer dereference") >> >> from the wireless tree and commit: >> >> fe4a6d2db3ba ("wifi: mac80211: implement support for yet another mesh A-MSDU format") >> >> from the wireless-next tree. >> >> I fixed it up (see below) and can carry the fix as necessary. This >> is now fixed as far as linux-next is concerned, but any non trivial >> conflicts should be mentioned to your upstream maintainer when your tree >> is submitted for merging. You may also want to consider cooperating >> with the maintainer of the conflicting tree to minimise any particularly >> complex conflicts. [...] > This is now a conflict between the net-next and net trees. My plan is to submit wireless-next pull request to net-next by Wednesday, that should fix the conflict.
diff --cc net/mac80211/rx.c index 3e2176a730e6,1c957194554b..000000000000 --- a/net/mac80211/rx.c