linux-wireless.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
From: Benoit PAPILLAULT <benoit.papillault@free.fr>
To: Bruno Randolf <br1@einfach.org>
Cc: "Luis R. Rodriguez" <mcgrof@gmail.com>,
	linville@tuxdriver.com, linux-wireless@vger.kernel.org
Subject: Re: [PATCH] mac80211: fix rates setup on IBSS merge
Date: Mon, 01 Mar 2010 22:17:29 +0100	[thread overview]
Message-ID: <4B8C2EE9.6040109@free.fr> (raw)
In-Reply-To: <201003011724.36089.br1@einfach.org>

Bruno Randolf a écrit :
> On Thursday 25 February 2010 08:56:40 Benoit PAPILLAULT wrote:
>   
>> Luis R. Rodriguez a écrit :
>>     
>>> On Tue, Feb 23, 2010 at 1:51 AM, Bruno Randolf <br1@einfach.org> wrote:
>>>       
>>>> when an IBSS merge happened, the supported rates for the newly added
>>>> station were left empty, causing the rate control module to be
>>>> initialized with only the basic rates.
>>>>
>>>> also the section of the ibss code which deals with updating supported
>>>> rates for an already existing station fails to inform the rate control
>>>> module about the new rates. as i don't know how to fix this (minstrel
>>>> does not have an update function), i have just added a comment for now.
>>>>
>>>> Signed-off-by: Bruno Randolf <br1@einfach.org>
>>>>         
>>> This seems like a stable fix, if it applies can you please resend with a
>>>
>>> Cc: stable@kernel.org
>>>
>>> on the commit log entry right below your own SOB.
>>>
>>>   Luis
>>>       
>> Hi Bruno,
>>
>> I think the root cause is that IBSS neighbor entries are added whenever
>> we received any packet from a neighbor. However, the supported rates are
>> only available in the beacon/probe responses. I think one fix is to only
>> add IBSS neighbors on beacon/probe response reception (and moreover,
>> beacon/probe responses contains the timestamp that is needed for IBSS
>> merge).
>>
>> Basically, I removed the call to ieee80211_ibss_add_sta in
>> net/mac80211/rx.c.
>>     
>
> i think we need to keep that.
>
> it can happen in normal IBSS operation, that we get a data packet from a node 
> which we did not yet receive a beacon from. for example: he might be part of 
> the IBSS, correctly merged and all, but have deferred from sending a beacon 
> the last couple of beacon intervals because some other node sent a beacon 
> first. or we might have missed his beacons due to interference. nevertheless 
> we should try to be able to communicate with him.
>
> also there are many broken implementation out there (prominent example: 
> madwifi) which fail to send beacons at some times. in order to communicate 
> with then we also need to add stations on receiving data packets.
>
> so i think the proper way is to add an update function to the rate control 
> module. (i will try to do that and send in another patch.)
>
> bruno
>
>   
For 802.11n for instance, only the beacons/probe responses say the 
sender is 802.11n. If we received a data packets from an unknown node, 
maybe we could simply do a probe request in order to get its probe 
response (despite the fact the 802.11 requires that only one node 
replies to probe request in IBSS, this is impossible to implement in 
practice). This will overcome if the sender node has not sent beacons 
for various reason (including shared beaconing).

Just my 2 cents.

Regards,
Benoit

  reply	other threads:[~2010-03-01 21:17 UTC|newest]

Thread overview: 6+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2010-02-23  9:51 [PATCH] mac80211: fix rates setup on IBSS merge Bruno Randolf
2010-02-23 19:28 ` Luis R. Rodriguez
2010-02-24 23:56   ` Benoit PAPILLAULT
2010-03-01  8:24     ` Bruno Randolf
2010-03-01 21:17       ` Benoit PAPILLAULT [this message]
2010-02-24 23:38 ` Adam Wozniak

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=4B8C2EE9.6040109@free.fr \
    --to=benoit.papillault@free.fr \
    --cc=br1@einfach.org \
    --cc=linux-wireless@vger.kernel.org \
    --cc=linville@tuxdriver.com \
    --cc=mcgrof@gmail.com \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).