From: Christian Lamparter <chunkeey@googlemail.com>
To: Felix Fietkau <nbd@openwrt.org>
Cc: Johannes Berg <johannes@sipsolutions.net>,
linux-wireless@vger.kernel.org, linville@tuxdriver.com,
greearb@candelatech.com
Subject: Re: [PATCH 2.6.39] mac80211: always clear PS filtering for non-AP interfaces
Date: Fri, 6 May 2011 17:53:41 +0200 [thread overview]
Message-ID: <201105061753.41835.chunkeey@googlemail.com> (raw)
In-Reply-To: <4DC3FBFF.1010504@openwrt.org>
On Friday 06 May 2011 15:47:43 Felix Fietkau wrote:
> On 2011-05-06 3:43 PM, Johannes Berg wrote:
> > On Fri, 2011-05-06 at 15:35 +0200, Felix Fietkau wrote:
> >
> >> >> >> + info->flags |= IEEE80211_TX_CTL_CLEAR_PS_FILT;
> >
> >> Rely on what being set in AP mode only? The patch ensures that the flag
> >> for *clearing* PS filtering gets set for all non-AP modes.
Yes, but p54 fw can and will filter frames in STA PS mode as well [This is
great because we can sent any frames to the device without caring about
the RX/TX races in the PS design, since the FW will return all frames with
"tx rejected due to PS" until the device receives the wake-up command].
> >> This flag
> >> already gets set whenever tx->sta is unset, so I think it also makes
> >> sense to extend that for other cases where the hardware is not supposed
> >> to enable any PS filtering on its own.
> >
> > I didn't remember/know about the case where sta is unset, but still,
> > what if the driver checks for the flag and does something that's only
> > valid in AP mode? I'm thinking firmware API here, not HW like ath9k.
> >
> >> > Your patch makes those drivers responsible for checking the mode, but
> >> > that makes less sense than having drivers that need to do some magic in
> >> > all modes, no?
> >> How does my patch make drivers responsible for checking the mode?
> >
> > Well, say I implement the clearing by sending something command to the
> > device, like p54. If that's only valid in AP mode in the firmware, now
> > this driver has to check that it's AP mode, where before it didn't have
> > to. That's not counting the sta==NULL case I guess.
> >
> > OTOH, we only have two drivers using the flag anyway. Go figure it out
> > between those two :)
> mac80211 already sets the flag for all modes. If drivers were depending
> on it being set only for AP mode, then those drivers would break even
> without my patch.
Setting the flag for broadcast is not a problem and neither is it when
the frame was filtered, but now it will be always "on" [in STA mode]
and this should be reserved for PS-POLLs [which is a different flag].
Regards,
Chr
prev parent reply other threads:[~2011-05-06 15:53 UTC|newest]
Thread overview: 9+ messages / expand[flat|nested] mbox.gz Atom feed top
2011-05-06 0:41 [PATCH 2.6.39] mac80211: always clear PS filtering for non-AP interfaces Felix Fietkau
2011-05-06 8:39 ` Johannes Berg
2011-05-06 13:08 ` Christian Lamparter
2011-05-06 13:20 ` Felix Fietkau
2011-05-06 13:26 ` Johannes Berg
2011-05-06 13:35 ` Felix Fietkau
2011-05-06 13:43 ` Johannes Berg
2011-05-06 13:47 ` Felix Fietkau
2011-05-06 15:53 ` Christian Lamparter [this message]
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=201105061753.41835.chunkeey@googlemail.com \
--to=chunkeey@googlemail.com \
--cc=greearb@candelatech.com \
--cc=johannes@sipsolutions.net \
--cc=linux-wireless@vger.kernel.org \
--cc=linville@tuxdriver.com \
--cc=nbd@openwrt.org \
/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 an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.