From: Johannes Berg <johannes@sipsolutions.net>
To: Herbert Xu <herbert@gondor.apana.org.au>
Cc: dsd@gentoo.org, davem@davemloft.net, netdev@vger.kernel.org,
linux-wireless@vger.kernel.org
Subject: Re: wireless vs. alignment requirements
Date: Sun, 25 Nov 2007 14:54:24 +0100 [thread overview]
Message-ID: <1195998864.4149.229.camel@johannes.berg> (raw)
In-Reply-To: <20071125112251.GA10039@gondor.apana.org.au>
[-- Attachment #1: Type: text/plain, Size: 2219 bytes --]
> > Not sure. On the one hand, yeah, that's something we should probably do,
> > on the other hand this will suck because for most drivers either nothing
> > needs to be done or the fixup is trivial. I suppose we should do this
> > but stick in a WARN_ON_ONCE() or something, at least with mac80211 debug
> > enabled.
>
> I don't see how you can get a WARN_ON to work when you're expecting
> there to be unaligned packets from time to time as the hardware
> header changes.
Well if the hardware header changes and the hardware is dumb enough not
to do padding I'd expect the driver to fix that up so I don't penalise
hardware that gets it correct.
> > Also, we do plan to run these things on rather smallish embedded devices
> > like APs that receive a lot of frames from many stations, and with 11n
> > we're pushing speeds up by quite a bit. I'm wary of putting more code
> > into the generic receive path.
>
> Well you don't have a choice if the hardware header is really
> unpredictable. It's either that or we go and modify the entire
> IP stack which penalises all the high-speed Ethernet NICs that
> already get the alignment correctly.
But I do have a choice where to fix it up and I'd prefer the drivers to
do it where necessary. For that, the warning would work because it'd
show driver authors that they need to fix something.
> Here's an idea. Even if you can't predict the header length of
> all packets, can you at least predict the header length of the
> majority of data (ones carrying IP etc.) packets?
>
> If so then you can do the skb_reserve based on that and the fix-up
> in the wireless core would be minimised.
>
> Since I know next to nothing about the wireless transport layer,
> one of you experts will need to tell me whether such a prediction
> could work :)
Hmm. I don't think so. Take an AP for example. It gets a lot of packets
from stations. Now, if you're not QoS capable then all is well. But i
you are and some stations are as well then all those stations send QoS
packets (+2 bytes). Or take an AP connected via wireless (WPS), WPS has
+6 bytes so I get all incoming upstream traffic with such unaligned
headers.
johannes
[-- Attachment #2: This is a digitally signed message part --]
[-- Type: application/pgp-signature, Size: 828 bytes --]
next prev parent reply other threads:[~2007-11-25 13:54 UTC|newest]
Thread overview: 35+ messages / expand[flat|nested] mbox.gz Atom feed top
2007-11-23 0:09 [PATCH] add compare_ether_addr_unaligned Daniel Drake
2007-11-23 4:11 ` Stephen Hemminger
2007-11-23 13:26 ` Herbert Xu
2007-11-26 10:39 ` Herbert Xu
2007-11-23 20:33 ` wireless vs. alignment requirements Johannes Berg
[not found] ` <1195850001.4149.165.camel-YfaajirXv214zXjbi5bjpg@public.gmane.org>
2007-11-24 6:15 ` Herbert Xu
2007-11-24 8:33 ` Johannes Berg
2007-11-24 13:32 ` Herbert Xu
[not found] ` <20071124133200.GA27531-lOAM2aK0SrRLBo1qDEOMRrpzq4S04n8Q@public.gmane.org>
2007-11-24 13:49 ` Johannes Berg
2007-11-24 13:51 ` David Miller
2007-11-24 14:13 ` Herbert Xu
[not found] ` <20071124141319.GA27819-lOAM2aK0SrRLBo1qDEOMRrpzq4S04n8Q@public.gmane.org>
2007-11-24 20:11 ` Stephen Hemminger
[not found] ` <4748855C.5090103-de/tnXTf+JLsfHDXvbKv3WD2FQJk+8+b@public.gmane.org>
2007-11-24 21:33 ` Johannes Berg
2007-11-25 1:08 ` Herbert Xu
[not found] ` <20071125010814.GD31668-lOAM2aK0SrRLBo1qDEOMRrpzq4S04n8Q@public.gmane.org>
2007-11-25 21:21 ` Stephen Hemminger
[not found] ` <4749E768.9040002-de/tnXTf+JLsfHDXvbKv3WD2FQJk+8+b@public.gmane.org>
2007-11-26 1:38 ` Herbert Xu
2007-11-27 17:16 ` H. Peter Anvin
2007-11-27 17:16 ` H. Peter Anvin
[not found] ` <474C50D7.5010901-YMNOUZJC4hwAvxtiuMwx3w@public.gmane.org>
2007-11-27 18:39 ` Stephen Hemminger
[not found] ` <20071127103940.314c7844-s08KbqtN0aBORcJjwVk881hTQxXnIo14@public.gmane.org>
2007-11-28 2:42 ` H. Peter Anvin
2007-11-29 13:11 ` Herbert Xu
2007-11-29 17:50 ` H. Peter Anvin
2007-11-30 0:26 ` Herbert Xu
[not found] ` <20071130002621.GI23769-lOAM2aK0SrRLBo1qDEOMRrpzq4S04n8Q@public.gmane.org>
2007-11-30 0:28 ` H. Peter Anvin
[not found] ` <474F5932.1030103-YMNOUZJC4hwAvxtiuMwx3w@public.gmane.org>
2007-11-30 0:34 ` Herbert Xu
[not found] ` <20071130003426.GJ23769-lOAM2aK0SrRLBo1qDEOMRrpzq4S04n8Q@public.gmane.org>
2007-11-30 0:41 ` H. Peter Anvin
2007-11-24 21:13 ` Johannes Berg
[not found] ` <1195938799.4149.197.camel-YfaajirXv214zXjbi5bjpg@public.gmane.org>
2007-11-25 1:44 ` Herbert Xu
[not found] ` <20071125014446.GA32104-lOAM2aK0SrRLBo1qDEOMRrpzq4S04n8Q@public.gmane.org>
2007-11-25 11:00 ` Johannes Berg
[not found] ` <1195988428.4149.225.camel-YfaajirXv214zXjbi5bjpg@public.gmane.org>
2007-11-25 11:22 ` Herbert Xu
2007-11-25 13:54 ` Johannes Berg [this message]
[not found] ` <1195998864.4149.229.camel-YfaajirXv214zXjbi5bjpg@public.gmane.org>
2007-11-25 14:01 ` Herbert Xu
2007-11-25 17:04 ` Johannes Berg
[not found] ` <1196010257.4149.234.camel-YfaajirXv214zXjbi5bjpg@public.gmane.org>
2007-11-26 1:36 ` Herbert Xu
2007-11-24 13:11 ` Ulrich Kunitz
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=1195998864.4149.229.camel@johannes.berg \
--to=johannes@sipsolutions.net \
--cc=davem@davemloft.net \
--cc=dsd@gentoo.org \
--cc=herbert@gondor.apana.org.au \
--cc=linux-wireless@vger.kernel.org \
--cc=netdev@vger.kernel.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 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).