Subject: Mesh mode broken since 2.6.34-rc1

Mesh mode does not work any more. I have some x86 MPs with 2.6.33.1, which work fine.
But there are establishment problems with 2.6.34-rc1.
The peering status changes between LISTEN, OPN_SNT and HOLDING, but does not reach ESTAB.

--
Best regards, Nick.


2010-03-26 21:10:47

by Johannes Berg

[permalink] [raw]
Subject: Re: Mesh mode broken since 2.6.34-rc1

Hi Javier,

> commit 8404080568613d93ad7cf0a16dfb68459b42a264
> Author: Johannes Berg <[email protected]>
> Date: Mon Feb 15 12:46:39 2010 +0200
>
> mac80211: reject unhandled action frames
>
> 802.11-2007 7.3.1.11 mandates that we need to
> reject action frames we don't handle by setting
> the 0x80 bit in the category and returning them
> to the sender, so do that. In AP mode, hostapd
> is responsible for this.
>
> Additionally, drop completely malformed action
> frames or ones that should've been encrypted as
> unusable, userspace shouldn't see those.
>
> Signed-off-by: Johannes Berg <[email protected]>
> Signed-off-by: Jouni Malinen <[email protected]>
> Signed-off-by: John W. Linville <[email protected]>
>
> After that commit we observe invalid action category codes (0x9e) in
> response to valid peer link open action frames (0x1e) and so no peer
> links are established. We don't have a fix at this time.

Whooops, good catch, this actually affects mlme.c as well! I'll fix
this, but I'm unlikely to get to it today and am travelling over the
weekend. For reference, the problem is that in rx.c we reject unknown
action frames in ieee80211_rx_h_action(), but the mesh/mlme code only
gets to see the action frames it wants in ieee80211_rx_h_mgmt() which
comes after rx_h_action. The proper fix will probably be to make
ieee80211_rx_h_action() aware of the frames that mesh/mlme wants to
handle it and not reject then.

johannes


2010-03-26 21:16:28

by Javier Cardona

[permalink] [raw]
Subject: Re: Mesh mode broken since 2.6.34-rc1

Johannes,

> The proper fix will probably be to make
> ieee80211_rx_h_action() aware of the frames that mesh/mlme wants to
> handle it and not reject then.

Thanks, Johannes. We are working on a patch along these lines. No
need to trouble yourself except for reviewing it when we send it.

Cheers,

Javier



--
Javier Cardona
cozybit Inc.
http://www.cozybit.com

2010-03-26 18:14:52

by Javier Cardona

[permalink] [raw]
Subject: Re: Mesh mode broken since 2.6.34-rc1

Hi Nick,

The commit that broke the mesh seems to be:

commit 8404080568613d93ad7cf0a16dfb68459b42a264
Author: Johannes Berg <[email protected]>
Date: Mon Feb 15 12:46:39 2010 +0200

mac80211: reject unhandled action frames

802.11-2007 7.3.1.11 mandates that we need to
reject action frames we don't handle by setting
the 0x80 bit in the category and returning them
to the sender, so do that. In AP mode, hostapd
is responsible for this.

Additionally, drop completely malformed action
frames or ones that should've been encrypted as
unusable, userspace shouldn't see those.

Signed-off-by: Johannes Berg <[email protected]>
Signed-off-by: Jouni Malinen <[email protected]>
Signed-off-by: John W. Linville <[email protected]>

After that commit we observe invalid action category codes (0x9e) in
response to valid peer link open action frames (0x1e) and so no peer
links are established. We don't have a fix at this time.

Cheers,

Javier


2010/3/24 Javier Cardona <[email protected]>:
> Nick,
>
> 2010/3/24 ????????? ??????? ?????????? <[email protected]>:
>> Mesh mode does not work any more. I have some x86 MPs with 2.6.33.1, which work fine.
>> But there are establishment problems with 2.6.34-rc1.
>> The peering status changes between LISTEN, OPN_SNT and HOLDING, but does not reach ESTAB.
>
> Yes, confirmed on our testbed that wireless-testing commit
> 60b341b778cc2929df16c0a504c91621b3c6a4ad is good. ?We'll investigate.
>
> Thanks,
>
> Javier
>
>
> --
> Javier Cardona
> cozybit Inc.
> http://www.cozybit.com
>



--
Javier Cardona
cozybit Inc.
http://www.cozybit.com

2010-03-25 01:16:21

by Javier Cardona

[permalink] [raw]
Subject: Re: Mesh mode broken since 2.6.34-rc1

Nick,

2010/3/24 ????????? ??????? ?????????? <[email protected]>:
> Mesh mode does not work any more. I have some x86 MPs with 2.6.33.1, which work fine.
> But there are establishment problems with 2.6.34-rc1.
> The peering status changes between LISTEN, OPN_SNT and HOLDING, but does not reach ESTAB.

Yes, confirmed on our testbed that wireless-testing commit
60b341b778cc2929df16c0a504c91621b3c6a4ad is good. We'll investigate.

Thanks,

Javier


--
Javier Cardona
cozybit Inc.
http://www.cozybit.com