Search Linux Wireless

Re: [RFCv2 6/6] mac80211: IBSS setup correctly BW for VHT

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

 



On 16 January 2015 at 13:18, Johannes Berg <johannes@xxxxxxxxxxxxxxxx> wrote:
> On Fri, 2015-01-16 at 13:08 +0100, Janusz Dziedzic wrote:
>> On 16 January 2015 at 11:55, Johannes Berg <johannes@xxxxxxxxxxxxxxxx> wrote:
>> > On Fri, 2015-01-16 at 11:38 +0100, Janusz Dziedzic wrote:
>> >
>> >> +                             /* we both use VHT */
>> >> +                             struct ieee80211_vht_cap vhtcap_ie;
>> >> +                             struct ieee80211_sta_vht_cap vht_cap = sta->sta.vht_cap;
>> >> +
>> >> +                             ieee80211_vht_oper_to_chandef(channel,
>> >> +                                                           elems->vht_operation,
>> >> +                                                           &chandef);
>> >
>> > Ok maybe I'm missing something - but can't this erroneously configure
>> > the local HW to 160 MHz when it doesn't even support it, or so?
>> >
>> I will check this more. But seems chandef (sta chandef) is a local
>> variable here, not used by the way.
>> So, our chandef is form cfg80211 (sdata->u.ibss.chandef) and we don't
>> change this.
>> Orginaly this sta chandef was used to compare with ibss->chandef.
>>
>> -                       if (chandef.center_freq1 !=
>> -                           sdata->u.ibss.chandef.center_freq1)
>> -                               htcap_ie.cap_info &=
>> -
>> cpu_to_le16(~IEEE80211_HT_CAP_SUP_WIDTH_20_40);
>>
>> But for me this check seems as not needed, eg.
>> We support VHT80 and other ibss have only HT40 support - so we will
>> have different center_freq1 - but still could operate, while sta_add
>> and correct rates for sta configured.
>> One I think we could check here is, if our chandef and sta chandef overlap.
>>
>> Anyway, I am not sure I understand your question correctly, you mean eg.
>> we work in VHT80 mode and other ibss join in VHT160 mode? Does it
>> really matter while we will use sta_add for this new V160 "station"
>> and configure supported rates for this station?
>
> Well like I said - I might not understand this correctly. But the
> ieee80211_vht_oper_to_chandef() function doesn't - iirc - take into
> account local capabilities. As a consequence, if a VHT160 station joins
> the chandef might be 160 while we're only supporting 80?
>
> But anyway - I see that at least what I originally thought was wrong -
> this code isn't concerned with picking up the channel from the peer to
> join the networks together, I guess. That's what I was worried about.
> That code I haven't seen and checked though - so perhaps you can look
> there if it correctly handles trying to form a network when the peer has
> higher capabilities than the local hw.
>
I am testing different combinations and TP

HT20 <-> HT40
HT20 <-> VHT80
HT40 <-> VHT80
HT40 <-> VHT80
VHT80 <-> HT20
VHT80 <-> HT40

using ath9k and ath10k. What I see using iw wlan0 info, we always
using chandef we pass from cfg80211.
We also update nss/rates/bw correctly in sta_rc_update().
But anyway will do more tests.

BR
Janusz
--
To unsubscribe from this list: send the line "unsubscribe linux-wireless" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at  http://vger.kernel.org/majordomo-info.html



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

  Powered by Linux