Search Linux Wireless

Re: wifi: mac80211: Re: unicast probe response bssid changed by "wifi: mac80211: do link->MLD address translation on RX"

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



On Wed, 2022-10-19 at 17:35 +0800, Wen Gong wrote:
> On 9/14/2022 11:13 AM, Wen Gong wrote:
> > Hi Johannes,
> > 
> > The mac addr of unicast rx packet all changed to the MLD address by 
> > below patch.
> > Now the probe presponse which is unicast packet is also changed mac 
> > address here.
> > I found bssid which is the MLD address of my test AP in 
> > cfg80211_get_bss().
> > For example, if the AP has 2 mlo links, link 1 is 5 GHz band, link 2 
> > is 2.4 GHz band,
> > then the 2 probe reponse will be changed to a same one.
> > seems we should skip probe presponse for the mac address change here, 
> > right?
> > 
> > https://git.kernel.org/pub/scm/linux/kernel/git/kvalo/ath.git/commit/?id=42fb9148c078004d07b4c39bd7b1086b6165780c 
> > 
> > wifi: mac80211: do link->MLD address translation on RX
> > 
> Hi Johannes,
> 
> May I get your comment about this?

Yes I've actually seen this issue as well.

> I did below change in my local test to workaround the issue.
> 
> diff --git a/net/mac80211/rx.c b/net/mac80211/rx.c
> index a57811372027..eaff5353520a 100644
> --- a/net/mac80211/rx.c
> +++ b/net/mac80211/rx.c
> @@ -4858,7 +4858,8 @@ static bool ieee80211_prepare_and_rx_handle(struct 
> ieee80211_rx_data *rx,
>           shwt->hwtstamp = skb_hwtstamps(skb)->hwtstamp;
>       }
> 
> -    if (unlikely(link_sta)) {
> +    if (unlikely(link_sta) &&
> +        !(ieee80211_is_probe_resp(hdr->frame_control))) {
>           /* translate to MLD addresses */
> 

Maybe it should also be for beacons or so?

johannes




[Index of Archives]     [Linux Host AP]     [ATH6KL]     [Linux Wireless Personal Area Network]     [Linux Bluetooth]     [Wireless Regulations]     [Linux Netdev]     [Kernel Newbies]     [Linux Kernel]     [IDE]     [Git]     [Netfilter]     [Bugtraq]     [Yosemite Hiking]     [MIPS Linux]     [ARM Linux]     [Linux RAID]

  Powered by Linux