public inbox for linux-wireless@vger.kernel.org
 help / color / mirror / Atom feed
From: Johannes Berg <johannes@sipsolutions.net>
To: Tomas Winkler <tomasw@gmail.com>
Cc: David Miller <davem@davemloft.net>,
	linville@tuxdriver.com, netdev@vger.kernel.org,
	linux-wireless@vger.kernel.org
Subject: Re: [RFC v2] mac80211: assign needed_headroom/tailroom for netdevs
Date: Mon, 05 May 2008 17:22:03 +0200	[thread overview]
Message-ID: <1210000923.8245.26.camel@johannes.berg> (raw)
In-Reply-To: <1ba2fa240805050727r2060b0b4x3a9b3240647b66b1@mail.gmail.com> (sfid-20080505_162641_085309_1D6B25FD)

[-- Attachment #1: Type: text/plain, Size: 1385 bytes --]


> I've did some measurement of the TX path  on an embedded system (2.6.23 kernel)
> When bridging packets from an ethernet device to wireless  there is
> loss of 12% in the CPU utilization and equivalent throughput reduction
> in data packets that are checked and expanded in
> ieee80211_subif_start_xmit function.

Yeah, I figured.

> The expansion is just due to bigger size of the 80211 header size, yet
> the whole packet is reallocated and copied. As we are reaching 11n
> rates 200bps and up this starts to be visible.
> When header was reserved to the  proper side already in the ethernet
> driver the overhead was gone. Yet this doesn't seems to be a correct
> solution for bridging or forwarding.
> For example Iwlwifi HW supports scattered packets this would allow
> just reallocate the header, providing data portion is aligned.

Right. Not all hardware supports this though, but even when it does I
don't see what we can do unless we want to do all this inside mac80211
which I'd rather not.

SKBs don't have a way to say "I need N bytes writable headroom but I can
do s/g operation for the rest" which is what we'd need. If that was
available, we could even work with clones, then we could pull away the
ethernet header and build the 802.11/device headers in separate buffers,
demoting the old 'skb head' buffer to a data buffer...

johannes

[-- Attachment #2: This is a digitally signed message part --]
[-- Type: application/pgp-signature, Size: 828 bytes --]

  reply	other threads:[~2008-05-05 15:23 UTC|newest]

Thread overview: 38+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2008-05-04 21:24 [RFC] mac80211: assign needed_headroom/tailroom for netdevs Johannes Berg
2008-05-04 21:31 ` Johannes Berg
2008-05-04 21:32 ` [RFC v2] " Johannes Berg
2008-05-05  0:30   ` David Miller
2008-05-05  7:22     ` Johannes Berg
2008-05-05 14:27       ` Tomas Winkler
2008-05-05 15:22         ` Johannes Berg [this message]
2008-05-05 17:15           ` Tomas Winkler
2008-05-05 17:57             ` Johannes Berg
2008-05-05 18:58               ` David Miller
2008-05-05 19:05                 ` Johannes Berg
2008-05-05 19:50                   ` David Miller
2008-05-05 19:57                     ` Johannes Berg
2008-05-05 20:02                       ` David Miller
2008-05-05 20:10                         ` Johannes Berg
2008-05-05 20:44                           ` David Miller
2008-05-05 20:57                             ` Johannes Berg
2008-05-05 21:01                               ` David Miller
2008-05-05 22:37                               ` David Miller
2008-05-05 22:44                                 ` Johannes Berg
2008-05-05 23:14                                   ` David Miller
2008-05-05 23:23                                     ` Johannes Berg
2008-05-05 23:39                                       ` David Miller
2008-05-06  0:01                                         ` Johannes Berg
2008-05-06  0:08                                           ` David Miller
2008-05-06 11:13                                             ` Johannes Berg
2008-05-06  1:32                                         ` Herbert Xu
2008-05-13  5:01                                 ` David Miller
2008-05-05 23:03           ` David Miller
2008-05-05 23:17             ` Johannes Berg
2008-05-05 23:24               ` David Miller
2008-05-05 23:30                 ` Johannes Berg
2008-05-05 23:36             ` Johannes Berg
2008-05-05 23:40               ` David Miller
2008-05-13  3:52   ` David Miller
2008-05-13  9:01     ` Johannes Berg
2008-05-13  9:45       ` David Miller
2008-05-13 10:07         ` Johannes Berg

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=1210000923.8245.26.camel@johannes.berg \
    --to=johannes@sipsolutions.net \
    --cc=davem@davemloft.net \
    --cc=linux-wireless@vger.kernel.org \
    --cc=linville@tuxdriver.com \
    --cc=netdev@vger.kernel.org \
    --cc=tomasw@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