All of lore.kernel.org
 help / color / mirror / Atom feed
* ieee80211_tx_status: headroom too small
@ 2009-10-30 20:00 Nikolai ZHUBR
  2009-10-30 20:03 ` Luis R. Rodriguez
  2009-10-30 20:59 ` Johannes Berg
  0 siblings, 2 replies; 21+ messages in thread
From: Nikolai ZHUBR @ 2009-10-30 20:00 UTC (permalink / raw)
  To: linux-wireless

Hello people,

I'm using compat-wireless-2009-09-14 with 2.6.25.20 and I have
recently noticed lots of these in syslog:

ieee80211_tx_status: headroom too small
ieee80211_tx_status: headroom too small
ieee80211_tx_status: headroom too small

The wireless (access point) works fine, though maybe not very
fast. However, this warning somehow bothers me. Is it important?
Does it mean something critical? Maybe I should just comment
it out in the code? I don't like syslog being filled up this
way...

Thank you.

Nikolai ZHUBR



^ permalink raw reply	[flat|nested] 21+ messages in thread

* Re: ieee80211_tx_status: headroom too small
  2009-10-30 20:00 ieee80211_tx_status: headroom too small Nikolai ZHUBR
@ 2009-10-30 20:03 ` Luis R. Rodriguez
  2009-10-30 20:49   ` Re[2]: " Nikolai ZHUBR
  2009-10-30 20:59 ` Johannes Berg
  1 sibling, 1 reply; 21+ messages in thread
From: Luis R. Rodriguez @ 2009-10-30 20:03 UTC (permalink / raw)
  To: Nikolai ZHUBR; +Cc: linux-wireless

On Fri, Oct 30, 2009 at 1:00 PM, Nikolai ZHUBR <zhubr@mail.ru> wrote:
> Hello people,
>
> I'm using compat-wireless-2009-09-14 with 2.6.25.20 and I have
> recently noticed lots of these in syslog:
>
> ieee80211_tx_status: headroom too small
> ieee80211_tx_status: headroom too small
> ieee80211_tx_status: headroom too small
>
> The wireless (access point) works fine, though maybe not very
> fast. However, this warning somehow bothers me. Is it important?
> Does it mean something critical? Maybe I should just comment
> it out in the code? I don't like syslog being filled up this
> way...

You're lucky it even worked on 2.6.25.

  Luis

^ permalink raw reply	[flat|nested] 21+ messages in thread

* Re[2]: ieee80211_tx_status: headroom too small
  2009-10-30 20:03 ` Luis R. Rodriguez
@ 2009-10-30 20:49   ` Nikolai ZHUBR
  0 siblings, 0 replies; 21+ messages in thread
From: Nikolai ZHUBR @ 2009-10-30 20:49 UTC (permalink / raw)
  To: Luis R. Rodriguez; +Cc: linux-wireless

Friday, October 30, 2009, 11:03:20 PM, Luis R. Rodriguez wrote:

>> ieee80211_tx_status: headroom too small
>> ieee80211_tx_status: headroom too small
>> ieee80211_tx_status: headroom too small
>>
>> The wireless (access point) works fine, though maybe not very
>> fast. However, this warning somehow bothers me. Is it important?
>> Does it mean something critical? Maybe I should just comment
>> it out in the code? I don't like syslog being filled up this
>> way...

> You're lucky it even worked on 2.6.25.

Yeah but... 2.6.25 is the kernel used in the latest official release
of OpenWRT and in OpenSuse 11.0 as well (which is still their latest
reasonable release, as of now, too)

Ok, I'll probably wait for some updates.

Nikolai ZHUBR

>   Luis



^ permalink raw reply	[flat|nested] 21+ messages in thread

* Re: ieee80211_tx_status: headroom too small
  2009-10-30 20:00 ieee80211_tx_status: headroom too small Nikolai ZHUBR
  2009-10-30 20:03 ` Luis R. Rodriguez
@ 2009-10-30 20:59 ` Johannes Berg
  2009-10-30 21:56   ` Re[2]: " Nikolai ZHUBR
  1 sibling, 1 reply; 21+ messages in thread
From: Johannes Berg @ 2009-10-30 20:59 UTC (permalink / raw)
  To: Nikolai ZHUBR; +Cc: linux-wireless

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

On Fri, 2009-10-30 at 23:00 +0300, Nikolai ZHUBR wrote:
> Hello people,
> 
> I'm using compat-wireless-2009-09-14 with 2.6.25.20 and I have
> recently noticed lots of these in syslog:
> 
> ieee80211_tx_status: headroom too small

What driver are you using?

johannes

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

^ permalink raw reply	[flat|nested] 21+ messages in thread

* Re[2]: ieee80211_tx_status: headroom too small
  2009-10-30 20:59 ` Johannes Berg
@ 2009-10-30 21:56   ` Nikolai ZHUBR
  2009-10-31  5:46     ` Johannes Berg
  0 siblings, 1 reply; 21+ messages in thread
From: Nikolai ZHUBR @ 2009-10-30 21:56 UTC (permalink / raw)
  To: Johannes Berg; +Cc: linux-wireless

Friday, October 30, 2009, 11:59:01 PM, Johannes Berg wrote:
>>
>> ieee80211_tx_status: headroom too small

> What driver are you using?

Ah, sorry, forgot to mention. It is rt61pci (RaLink mini-PCI card)

Nikolai ZHUBR

> johannes



^ permalink raw reply	[flat|nested] 21+ messages in thread

* Re: Re[2]: ieee80211_tx_status: headroom too small
  2009-10-30 21:56   ` Re[2]: " Nikolai ZHUBR
@ 2009-10-31  5:46     ` Johannes Berg
  2009-10-31  8:51       ` Ivo van Doorn
  0 siblings, 1 reply; 21+ messages in thread
From: Johannes Berg @ 2009-10-31  5:46 UTC (permalink / raw)
  To: Nikolai ZHUBR; +Cc: linux-wireless, Ivo Van Doorn

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

On Sat, 2009-10-31 at 00:56 +0300, Nikolai ZHUBR wrote:
> Friday, October 30, 2009, 11:59:01 PM, Johannes Berg wrote:
> >>
> >> ieee80211_tx_status: headroom too small
> 
> > What driver are you using?
> 
> Ah, sorry, forgot to mention. It is rt61pci (RaLink mini-PCI card)

Ok. I looked at the problem and it's a very odd problem -- mac80211
should always reserve enough headroom in buffers it passes to the
driver. Does rt61pci somehow realloc frames?

johannes

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

^ permalink raw reply	[flat|nested] 21+ messages in thread

* Re: ieee80211_tx_status: headroom too small
  2009-10-31  5:46     ` Johannes Berg
@ 2009-10-31  8:51       ` Ivo van Doorn
  2009-10-31  8:56         ` Johannes Berg
  0 siblings, 1 reply; 21+ messages in thread
From: Ivo van Doorn @ 2009-10-31  8:51 UTC (permalink / raw)
  To: Johannes Berg; +Cc: Nikolai ZHUBR, linux-wireless

On Saturday 31 October 2009, Johannes Berg wrote:
> On Sat, 2009-10-31 at 00:56 +0300, Nikolai ZHUBR wrote:
> > Friday, October 30, 2009, 11:59:01 PM, Johannes Berg wrote:
> > >>
> > >> ieee80211_tx_status: headroom too small
> > 
> > > What driver are you using?
> > 
> > Ah, sorry, forgot to mention. It is rt61pci (RaLink mini-PCI card)
> 
> Ok. I looked at the problem and it's a very odd problem -- mac80211
> should always reserve enough headroom in buffers it passes to the
> driver. Does rt61pci somehow realloc frames?

It does use skb_push. but will/should always stay within the limits
of rt2x00dev->hw->extra_tx_headroom. Although I just realize there
might be a situation where it needs to align the frame to a 4-byte boundary,
it could exceed that amount. :(

Ivo

^ permalink raw reply	[flat|nested] 21+ messages in thread

* Re: ieee80211_tx_status: headroom too small
  2009-10-31  8:51       ` Ivo van Doorn
@ 2009-10-31  8:56         ` Johannes Berg
  2009-10-31  8:59           ` Ivo van Doorn
  0 siblings, 1 reply; 21+ messages in thread
From: Johannes Berg @ 2009-10-31  8:56 UTC (permalink / raw)
  To: Ivo van Doorn; +Cc: Nikolai ZHUBR, linux-wireless

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

On Sat, 2009-10-31 at 09:51 +0100, Ivo van Doorn wrote:

> > Ok. I looked at the problem and it's a very odd problem -- mac80211
> > should always reserve enough headroom in buffers it passes to the
> > driver. Does rt61pci somehow realloc frames?
> 
> It does use skb_push. but will/should always stay within the limits
> of rt2x00dev->hw->extra_tx_headroom. Although I just realize there
> might be a situation where it needs to align the frame to a 4-byte boundary,
> it could exceed that amount. :(

extra_tx_headroom is set to max_t(driver, mac80211) so that there's
always some headroom. This doesn't take into account alignment though.
Should we simply add 2 to that value?

johannes

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

^ permalink raw reply	[flat|nested] 21+ messages in thread

* Re: ieee80211_tx_status: headroom too small
  2009-10-31  8:56         ` Johannes Berg
@ 2009-10-31  8:59           ` Ivo van Doorn
  2009-10-31  9:25             ` Johannes Berg
  0 siblings, 1 reply; 21+ messages in thread
From: Ivo van Doorn @ 2009-10-31  8:59 UTC (permalink / raw)
  To: Johannes Berg; +Cc: Nikolai ZHUBR, linux-wireless

On Saturday 31 October 2009, Johannes Berg wrote:
> On Sat, 2009-10-31 at 09:51 +0100, Ivo van Doorn wrote:
> 
> > > Ok. I looked at the problem and it's a very odd problem -- mac80211
> > > should always reserve enough headroom in buffers it passes to the
> > > driver. Does rt61pci somehow realloc frames?
> > 
> > It does use skb_push. but will/should always stay within the limits
> > of rt2x00dev->hw->extra_tx_headroom. Although I just realize there
> > might be a situation where it needs to align the frame to a 4-byte boundary,
> > it could exceed that amount. :(
> 
> extra_tx_headroom is set to max_t(driver, mac80211) so that there's
> always some headroom. This doesn't take into account alignment though.
> Should we simply add 2 to that value?

4 actually, wasn't there some cases where the header could have an odd
number of bytes and would require 3 bytes for alignment?

Ivo

^ permalink raw reply	[flat|nested] 21+ messages in thread

* Re: ieee80211_tx_status: headroom too small
  2009-10-31  8:59           ` Ivo van Doorn
@ 2009-10-31  9:25             ` Johannes Berg
  2009-10-31  9:30               ` Ivo van Doorn
  0 siblings, 1 reply; 21+ messages in thread
From: Johannes Berg @ 2009-10-31  9:25 UTC (permalink / raw)
  To: Ivo van Doorn; +Cc: Nikolai ZHUBR, linux-wireless

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

On Sat, 2009-10-31 at 09:59 +0100, Ivo van Doorn wrote:
> On Saturday 31 October 2009, Johannes Berg wrote:
> > On Sat, 2009-10-31 at 09:51 +0100, Ivo van Doorn wrote:
> > 
> > > > Ok. I looked at the problem and it's a very odd problem -- mac80211
> > > > should always reserve enough headroom in buffers it passes to the
> > > > driver. Does rt61pci somehow realloc frames?
> > > 
> > > It does use skb_push. but will/should always stay within the limits
> > > of rt2x00dev->hw->extra_tx_headroom. Although I just realize there
> > > might be a situation where it needs to align the frame to a 4-byte boundary,
> > > it could exceed that amount. :(
> > 
> > extra_tx_headroom is set to max_t(driver, mac80211) so that there's
> > always some headroom. This doesn't take into account alignment though.
> > Should we simply add 2 to that value?
> 
> 4 actually, wasn't there some cases where the header could have an odd
> number of bytes and would require 3 bytes for alignment?

Hm, is there? I thought they changed the 11s draft to no longer have
that.

johannes

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

^ permalink raw reply	[flat|nested] 21+ messages in thread

* Re: ieee80211_tx_status: headroom too small
  2009-10-31  9:25             ` Johannes Berg
@ 2009-10-31  9:30               ` Ivo van Doorn
  2009-10-31  9:34                 ` Johannes Berg
  0 siblings, 1 reply; 21+ messages in thread
From: Ivo van Doorn @ 2009-10-31  9:30 UTC (permalink / raw)
  To: Johannes Berg; +Cc: Nikolai ZHUBR, linux-wireless

On Saturday 31 October 2009, Johannes Berg wrote:
> On Sat, 2009-10-31 at 09:59 +0100, Ivo van Doorn wrote:
> > On Saturday 31 October 2009, Johannes Berg wrote:
> > > On Sat, 2009-10-31 at 09:51 +0100, Ivo van Doorn wrote:
> > > 
> > > > > Ok. I looked at the problem and it's a very odd problem -- mac80211
> > > > > should always reserve enough headroom in buffers it passes to the
> > > > > driver. Does rt61pci somehow realloc frames?
> > > > 
> > > > It does use skb_push. but will/should always stay within the limits
> > > > of rt2x00dev->hw->extra_tx_headroom. Although I just realize there
> > > > might be a situation where it needs to align the frame to a 4-byte boundary,
> > > > it could exceed that amount. :(
> > > 
> > > extra_tx_headroom is set to max_t(driver, mac80211) so that there's
> > > always some headroom. This doesn't take into account alignment though.
> > > Should we simply add 2 to that value?
> > 
> > 4 actually, wasn't there some cases where the header could have an odd
> > number of bytes and would require 3 bytes for alignment?
> 
> Hm, is there? I thought they changed the 11s draft to no longer have
> that.

Well 2 is fine in that case, (I was basing my comment on something said on this mailinglist
a long time ago). :)

Ivo


^ permalink raw reply	[flat|nested] 21+ messages in thread

* Re: ieee80211_tx_status: headroom too small
  2009-10-31  9:30               ` Ivo van Doorn
@ 2009-10-31  9:34                 ` Johannes Berg
  2009-10-31  9:44                   ` Ivo van Doorn
  2009-10-31 14:24                   ` Re[2]: " Nikolai ZHUBR
  0 siblings, 2 replies; 21+ messages in thread
From: Johannes Berg @ 2009-10-31  9:34 UTC (permalink / raw)
  To: Ivo van Doorn; +Cc: Nikolai ZHUBR, linux-wireless

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

On Sat, 2009-10-31 at 10:30 +0100, Ivo van Doorn wrote:

> > > 4 actually, wasn't there some cases where the header could have an odd
> > > number of bytes and would require 3 bytes for alignment?
> > 
> > Hm, is there? I thought they changed the 11s draft to no longer have
> > that.
> 
> Well 2 is fine in that case, (I was basing my comment on something said on this mailinglist
> a long time ago). :)

However, it really all depends on the hardware too ... Maybe we should
put more of the logic into drivers, and have mac80211 only export its
required headroom?

Or maybe we should just not bother with having drivers do the alignment
any more -- mac80211 does that now and it only does it if necessary
(i.e. not on powerpc/x86)

johannes

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

^ permalink raw reply	[flat|nested] 21+ messages in thread

* Re: ieee80211_tx_status: headroom too small
  2009-10-31  9:34                 ` Johannes Berg
@ 2009-10-31  9:44                   ` Ivo van Doorn
  2009-10-31 10:03                     ` Johannes Berg
  2009-10-31 14:24                   ` Re[2]: " Nikolai ZHUBR
  1 sibling, 1 reply; 21+ messages in thread
From: Ivo van Doorn @ 2009-10-31  9:44 UTC (permalink / raw)
  To: Johannes Berg; +Cc: Nikolai ZHUBR, linux-wireless

On Saturday 31 October 2009, Johannes Berg wrote:
> On Sat, 2009-10-31 at 10:30 +0100, Ivo van Doorn wrote:
> 
> > > > 4 actually, wasn't there some cases where the header could have an odd
> > > > number of bytes and would require 3 bytes for alignment?
> > > 
> > > Hm, is there? I thought they changed the 11s draft to no longer have
> > > that.
> > 
> > Well 2 is fine in that case, (I was basing my comment on something said on this mailinglist
> > a long time ago). :)
> 
> However, it really all depends on the hardware too ... Maybe we should
> put more of the logic into drivers, and have mac80211 only export its
> required headroom?
> 
> Or maybe we should just not bother with having drivers do the alignment
> any more -- mac80211 does that now and it only does it if necessary
> (i.e. not on powerpc/x86)

I think you mean the RX alignment, while I am talking about the TX alignment.
Beacons and some othe frames must be 4-byte alignment because the wireleless
hardware requires it.

Ivo

^ permalink raw reply	[flat|nested] 21+ messages in thread

* Re: ieee80211_tx_status: headroom too small
  2009-10-31  9:44                   ` Ivo van Doorn
@ 2009-10-31 10:03                     ` Johannes Berg
  2009-10-31 10:17                       ` Ivo van Doorn
  0 siblings, 1 reply; 21+ messages in thread
From: Johannes Berg @ 2009-10-31 10:03 UTC (permalink / raw)
  To: Ivo van Doorn; +Cc: Nikolai ZHUBR, linux-wireless

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

On Sat, 2009-10-31 at 10:44 +0100, Ivo van Doorn wrote:

> > Or maybe we should just not bother with having drivers do the alignment
> > any more -- mac80211 does that now and it only does it if necessary
> > (i.e. not on powerpc/x86)
> 
> I think you mean the RX alignment, while I am talking about the TX alignment.
> Beacons and some othe frames must be 4-byte alignment because the wireleless
> hardware requires it.

Oh, indeed, I got confused.

Hmm. TX alignment is weird ... no driver really needs that except rt2x00
afaik. Which frames require this?

johannes

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

^ permalink raw reply	[flat|nested] 21+ messages in thread

* Re: ieee80211_tx_status: headroom too small
  2009-10-31 10:03                     ` Johannes Berg
@ 2009-10-31 10:17                       ` Ivo van Doorn
  2009-10-31 10:23                         ` Johannes Berg
  0 siblings, 1 reply; 21+ messages in thread
From: Ivo van Doorn @ 2009-10-31 10:17 UTC (permalink / raw)
  To: Johannes Berg; +Cc: Nikolai ZHUBR, linux-wireless

On Saturday 31 October 2009, Johannes Berg wrote:
> On Sat, 2009-10-31 at 10:44 +0100, Ivo van Doorn wrote:
> 
> > > Or maybe we should just not bother with having drivers do the alignment
> > > any more -- mac80211 does that now and it only does it if necessary
> > > (i.e. not on powerpc/x86)
> > 
> > I think you mean the RX alignment, while I am talking about the TX alignment.
> > Beacons and some othe frames must be 4-byte alignment because the wireleless
> > hardware requires it.
> 
> Oh, indeed, I got confused.
> 
> Hmm. TX alignment is weird ... no driver really needs that except rt2x00
> afaik. Which frames require this?

At the least the beacons, but I am not sure about if there are other frame types
which also have this requirement.

Users had reported that if they align beacon frames, rt2500pci finally starts
beaconing correctly in master mode.

Ivo

^ permalink raw reply	[flat|nested] 21+ messages in thread

* Re: ieee80211_tx_status: headroom too small
  2009-10-31 10:17                       ` Ivo van Doorn
@ 2009-10-31 10:23                         ` Johannes Berg
  2009-10-31 10:33                           ` Ivo van Doorn
  0 siblings, 1 reply; 21+ messages in thread
From: Johannes Berg @ 2009-10-31 10:23 UTC (permalink / raw)
  To: Ivo van Doorn; +Cc: Nikolai ZHUBR, linux-wireless

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

On Sat, 2009-10-31 at 11:17 +0100, Ivo van Doorn wrote:

> At the least the beacons, but I am not sure about if there are other frame types
> which also have this requirement.

So you align them all right now? Just wondering since beacons shouldn't
be status-reported.

johannes

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

^ permalink raw reply	[flat|nested] 21+ messages in thread

* Re: ieee80211_tx_status: headroom too small
  2009-10-31 10:23                         ` Johannes Berg
@ 2009-10-31 10:33                           ` Ivo van Doorn
  0 siblings, 0 replies; 21+ messages in thread
From: Ivo van Doorn @ 2009-10-31 10:33 UTC (permalink / raw)
  To: Johannes Berg; +Cc: Nikolai ZHUBR, linux-wireless

On Saturday 31 October 2009, Johannes Berg wrote:
> On Sat, 2009-10-31 at 11:17 +0100, Ivo van Doorn wrote:
> 
> > At the least the beacons, but I am not sure about if there are other frame types
> > which also have this requirement.
> 
> So you align them all right now? Just wondering since beacons shouldn't
> be status-reported.

Currently I do all, but that is because I am not sure which specific frames
require it. I might just fix this for beacons only and just see what happens
with the other frames.

Ivo

^ permalink raw reply	[flat|nested] 21+ messages in thread

* Re[2]: ieee80211_tx_status: headroom too small
  2009-10-31  9:34                 ` Johannes Berg
  2009-10-31  9:44                   ` Ivo van Doorn
@ 2009-10-31 14:24                   ` Nikolai ZHUBR
  2009-10-31 15:35                     ` Johannes Berg
  1 sibling, 1 reply; 21+ messages in thread
From: Nikolai ZHUBR @ 2009-10-31 14:24 UTC (permalink / raw)
  To: Johannes Berg; +Cc: Ivo van Doorn, linux-wireless

Saturday, October 31, 2009, 12:34:37 PM, Johannes Berg wrote:
>> > > 4 actually, wasn't there some cases where the header could have an odd
>> > > number of bytes and would require 3 bytes for alignment?
>> > 
>> > Hm, is there? I thought they changed the 11s draft to no longer have
>> > that.
>> 
>> Well 2 is fine in that case, (I was basing my comment on something said on this mailinglist
>> a long time ago). :)

> However, it really all depends on the hardware too ... Maybe we should
> put more of the logic into drivers, and have mac80211 only export its
> required headroom?

> Or maybe we should just not bother with having drivers do the alignment
> any more -- mac80211 does that now and it only does it if necessary
> (i.e. not on powerpc/x86)

I'm having this issue on mips platform, if it matters. I cannot test
it on x86 yet.

Now, searching for "extra_tx_headroom" gives me essentially the
following two:

net/mac80211/main.c:
        local->tx_headroom = max_t(unsigned int , local->hw.extra_tx_headroom,
                                   sizeof(struct ieee80211_tx_status_rtap_hdr));

drivers/net/wireless/rt*pci.c:
        rt2x00dev->hw->extra_tx_headroom = 0;

So, as a quick-and-dirty fix, should I replace "max_t(..." by "4 + max_t(..."
or "= 0" by "= 4" ?

Thank you!

Nikolai ZHUBR

> johannes



^ permalink raw reply	[flat|nested] 21+ messages in thread

* Re: Re[2]: ieee80211_tx_status: headroom too small
  2009-10-31 14:24                   ` Re[2]: " Nikolai ZHUBR
@ 2009-10-31 15:35                     ` Johannes Berg
  2009-10-31 17:42                       ` Re[4]: " Nikolai ZHUBR
  0 siblings, 1 reply; 21+ messages in thread
From: Johannes Berg @ 2009-10-31 15:35 UTC (permalink / raw)
  To: Nikolai ZHUBR; +Cc: Ivo van Doorn, linux-wireless

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

On Sat, 2009-10-31 at 17:24 +0300, Nikolai ZHUBR wrote:
> Saturday, October 31, 2009, 12:34:37 PM, Johannes Berg wrote:
> >> > > 4 actually, wasn't there some cases where the header could have an odd
> >> > > number of bytes and would require 3 bytes for alignment?
> >> > 
> >> > Hm, is there? I thought they changed the 11s draft to no longer have
> >> > that.
> >> 
> >> Well 2 is fine in that case, (I was basing my comment on something said on this mailinglist
> >> a long time ago). :)
> 
> > However, it really all depends on the hardware too ... Maybe we should
> > put more of the logic into drivers, and have mac80211 only export its
> > required headroom?
> 
> > Or maybe we should just not bother with having drivers do the alignment
> > any more -- mac80211 does that now and it only does it if necessary
> > (i.e. not on powerpc/x86)
> 
> I'm having this issue on mips platform, if it matters. I cannot test
> it on x86 yet.
> 
> Now, searching for "extra_tx_headroom" gives me essentially the
> following two:
> 
> net/mac80211/main.c:
>         local->tx_headroom = max_t(unsigned int , local->hw.extra_tx_headroom,
>                                    sizeof(struct ieee80211_tx_status_rtap_hdr));
> 
> drivers/net/wireless/rt*pci.c:
>         rt2x00dev->hw->extra_tx_headroom = 0;
> 
> So, as a quick-and-dirty fix, should I replace "max_t(..." by "4 + max_t(..."
> or "= 0" by "= 4" ?

4 + max ... should work if it's what we think it is. Let us know.

johannes

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

^ permalink raw reply	[flat|nested] 21+ messages in thread

* Re[4]: ieee80211_tx_status: headroom too small
  2009-10-31 15:35                     ` Johannes Berg
@ 2009-10-31 17:42                       ` Nikolai ZHUBR
  0 siblings, 0 replies; 21+ messages in thread
From: Nikolai ZHUBR @ 2009-10-31 17:42 UTC (permalink / raw)
  To: Johannes Berg; +Cc: Ivo van Doorn, linux-wireless

Saturday, October 31, 2009, 6:35:44 PM, Johannes Berg wrote:
>> net/mac80211/main.c:
>>         local->tx_headroom = max_t(unsigned int , local->hw.extra_tx_headroom,
>>                                    sizeof(struct ieee80211_tx_status_rtap_hdr));
>> 
>> drivers/net/wireless/rt*pci.c:
>>         rt2x00dev->hw->extra_tx_headroom = 0;
>> 
>> So, as a quick-and-dirty fix, should I replace "max_t(..." by "4 + max_t(...."
>> or "= 0" by "= 4" ?

> 4 + max ... should work if it's what we think it is. Let us know.

Yes, it removed those messages.
The actual speed is still not very high (like at 10Mbit maybe,
though 54Mbit is shown and the distance from the AP is very small,
so signal quality should be good I suppose) but it is ok for me.

Thank you!

Nikolai ZHUBR


> johannes



^ permalink raw reply	[flat|nested] 21+ messages in thread

* ieee80211_tx_status: headroom too small
@ 2009-11-21  1:30 David Ellingsworth
  0 siblings, 0 replies; 21+ messages in thread
From: David Ellingsworth @ 2009-11-21  1:30 UTC (permalink / raw)
  To: Johannes Berg, users, LKML

Wasn't sure where to send this, but with the latest 2.6.32-rc8-wl
kernel built from the wireless-testing repository I'm getting a number
of "ieee80211_tx_status: headroom too small" errors in my syslog. I'm
using the rt61pci driver in conjunction with hostap as a wpa2 secured
access point. The relevant information about my card from lspci is:

01:08.0 0280: 1814:0301
        Subsystem: 1458:e934
        Control: I/O+ Mem+ BusMaster+ SpecCycle- MemWINV+ VGASnoop-
ParErr- Stepping- SERR+ FastB2B- DisINTx-
        Status: Cap+ 66MHz- UDF- FastB2B- ParErr- DEVSEL=slow >TAbort-
<TAbort- <MAbort- >SERR- <PERR- INTx-
        Latency: 64, Cache Line Size: 128 bytes
        Interrupt: pin A routed to IRQ 18
        Region 0: Memory at fe6f0000 (32-bit, non-prefetchable) [size=32K]
        Capabilities: [40] Power Management version 2
                Flags: PMEClk- DSI- D1- D2- AuxCurrent=0mA
PME(D0-,D1-,D2-,D3hot-,D3cold-)
                Status: D0 NoSoftRst- PME-Enable- DSel=0 DScale=0 PME-
        Kernel driver in use: rt61pci

If you need any other information, I'll be happy to provide it.

Regards,

David Ellingsworth

^ permalink raw reply	[flat|nested] 21+ messages in thread

end of thread, other threads:[~2009-11-21  1:30 UTC | newest]

Thread overview: 21+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2009-10-30 20:00 ieee80211_tx_status: headroom too small Nikolai ZHUBR
2009-10-30 20:03 ` Luis R. Rodriguez
2009-10-30 20:49   ` Re[2]: " Nikolai ZHUBR
2009-10-30 20:59 ` Johannes Berg
2009-10-30 21:56   ` Re[2]: " Nikolai ZHUBR
2009-10-31  5:46     ` Johannes Berg
2009-10-31  8:51       ` Ivo van Doorn
2009-10-31  8:56         ` Johannes Berg
2009-10-31  8:59           ` Ivo van Doorn
2009-10-31  9:25             ` Johannes Berg
2009-10-31  9:30               ` Ivo van Doorn
2009-10-31  9:34                 ` Johannes Berg
2009-10-31  9:44                   ` Ivo van Doorn
2009-10-31 10:03                     ` Johannes Berg
2009-10-31 10:17                       ` Ivo van Doorn
2009-10-31 10:23                         ` Johannes Berg
2009-10-31 10:33                           ` Ivo van Doorn
2009-10-31 14:24                   ` Re[2]: " Nikolai ZHUBR
2009-10-31 15:35                     ` Johannes Berg
2009-10-31 17:42                       ` Re[4]: " Nikolai ZHUBR
2009-11-21  1:30 David Ellingsworth

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.