linux-wireless.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
From: Felix Fietkau <nbd@openwrt.org>
To: Rajkumar Manoharan <rmanoharan@atheros.com>
Cc: "Björn Smedman" <bjorn.smedman@venatech.se>,
	"linux-wireless@vger.kernel.org" <linux-wireless@vger.kernel.org>
Subject: Re: [RFC] ath9k: Handle interface changes properly
Date: Thu, 13 Jan 2011 15:23:27 +0100	[thread overview]
Message-ID: <4D2F0ADF.1040009@openwrt.org> (raw)
In-Reply-To: <20110113051849.GD8836@vmraj-lnx.users.atheros.com>

On 2011-01-13 6:18 AM, Rajkumar Manoharan wrote:
> On Thu, Jan 13, 2011 at 01:21:47AM +0530, Felix Fietkau wrote:
>>  On 2011-01-12 10:06 AM, Björn Smedman wrote:
>>  >  On Wed, Jan 12, 2011 at 3:30 PM, Rajkumar Manoharan
>>  >  <rmanoharan@atheros.com>   wrote:
>>  >>   The commit ""ath9k: Add change_interface callback" was failed
>>  >>   to update of hw opmode, ani and interrupt mask. This leads
>>  >>   to break p2p functionality on ath9k. And the existing add and
>>  >>   remove interface functions are not handling hw opmode and
>>  >>   ANI properly.
>>  >>
>>  >>   This patch combines the common code in interface callbacks
>>  >>   and also takes care of multi-vif cases.
>>  >
>>  >  How does your patch handle the race condition between the interface
>>  >  change done in process context and the beacon tasklet triggered by
>>  >  SWBA?
>>  >
>>  >  Also, perhaps more applicable to the commit log than the patch, how
>>  >  can opmode be properly handled in multi-vif cases? I mean let's say I
>>  >  have two AP vifs and then change one into STA, is the opmode then STA?
>>  >  Compare that to the case where I have two STA vifs and change one into
>>  >  AP; so again I have one AP and one STA vif but this time opmode is AP,
>>  >  right? I can see how I can be wrong about these examples but I can't
>>  >  really see how the opmode concept can be properly handled in multi-vif
>>  >  cases.
>>  I think opmode should be handled as follows:
>>  If there is at least one AP interface, opmode should be AP, regardless
>>  of what the other interfaces are set to.
>>  If there is no AP vif, opmode can be set to the primary vif type.
>>
> Correct. this RFC patch does the same.
Really? I don't see that being handled properly, it still seems to 
overwrite ah->opmode based on a single vif type for some types.

Maybe it would be a good idea to clean this up and first limit the 
number of different types that we pass to ath9k_hw (i.e. only AP, ADHOC, 
STA). Later we can make a separate enum for that to avoid passing the 
type as-is entirely.

I think the mesh point opmode has no place in ath9k_hw. Right now it is 
treated like ad-hoc, but I think that's completely wrong. Mesh should 
behave just like AP mode, as no ad-hoc style TSF synchronization should 
be done by the hardware, and 802.11s mesh nodes do not compete for 
beacon transmission.

Also, there is no reason to have a WDS opmode in ath9k_hw. WDS is 
typically used along with AP mode interfaces, and where it is not, the 
AP opmode should be used for ath9k_hw anyway.

- Felix

  reply	other threads:[~2011-01-13 14:23 UTC|newest]

Thread overview: 22+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2011-01-12 14:30 [RFC] ath9k: Handle interface changes properly Rajkumar Manoharan
2011-01-12 17:06 ` Björn Smedman
2011-01-12 17:22   ` Sujith
2011-01-12 19:00     ` Björn Smedman
2011-01-13  1:56       ` Sujith
2011-01-13  5:16       ` Rajkumar Manoharan
2011-01-13  5:10     ` Rajkumar Manoharan
2011-01-12 19:51   ` Felix Fietkau
2011-01-12 20:14     ` Ben Greear
2011-01-13  5:18     ` Rajkumar Manoharan
2011-01-13 14:23       ` Felix Fietkau [this message]
2011-01-13 16:35         ` Rajkumar Manoharan
2011-01-13 16:49           ` Felix Fietkau
2011-01-14 18:13             ` Rajkumar Manoharan
2011-01-14 18:22               ` Felix Fietkau
2011-01-14 18:53                 ` Rajkumar Manoharan
2011-01-14 19:06                   ` Felix Fietkau
2011-01-14 19:24                     ` Rajkumar Manoharan
2011-01-14 19:29                       ` Ben Greear
2011-01-14 19:34                         ` Felix Fietkau
2011-01-14 23:02                     ` Björn Smedman
2011-01-13  5:08   ` Rajkumar Manoharan

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=4D2F0ADF.1040009@openwrt.org \
    --to=nbd@openwrt.org \
    --cc=bjorn.smedman@venatech.se \
    --cc=linux-wireless@vger.kernel.org \
    --cc=rmanoharan@atheros.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).