linux-wireless.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
From: "Mikko Virkkilä" <mikko.virkkila@bluegiga.com>
To: Ivo van Doorn <ivdoorn@gmail.com>
Cc: linux-wireless@vger.kernel.org,
	rt2400-devel@lists.sourceforge.net,
	Stephen Blackheath <tramp.enshrine.stephen@blacksapphire.com>
Subject: Re: mac80211 interprets missing TX_ACK flag as tx fail
Date: Fri, 15 Aug 2008 21:08:36 +0300	[thread overview]
Message-ID: <1218823716.22679.78.camel@virkkmi-linux> (raw)
In-Reply-To: <200808151958.46302.IvDoorn@gmail.com>

On Fri, 2008-08-15 at 19:58 +0200, Ivo van Doorn wrote:
> On Friday 15 August 2008, Mikko Virkkil=C3=A4 wrote:
> > I'm moving the conversation over from rt2400-devel to linux-wireles=
s.
> > The last message (as of this writing) from the earlier conversation=
 at
> > rt2400-devel can be found at http://tinyurl.com/6p9n7g with some mo=
re
> > details.
> >=20
> > So to summarize the situation:=20
> >=20
> > - the rt73usb driver (in rt2x00) doesn't set IEEE80211_TX_STAT_ACK
> >   because "frames which are uploaded to the hardware are not guaren=
teed
> >   to be acked".
>=20
> rt2500usb suffers from the same issue.
>=20
> > - The mac80211 layer will set the IEEE80211_RADIOTAP_F_TX_FAIL if t=
he=20
> >   IEEE80211_TX_STAT_ACK flag is missing.=20
> > - hostapd will interpret the IEEE80211_RADIOTAP_F_TX_FAIL as a fail=
ure
> >   to send
> >=20
> > This all results in hostapd reporting "MGMT (TX callback) fail" and
> > making rt73usb not work in AP mode.=20
> >=20
> > I'm hoping that some decision can be reached on how to fix this so =
that
> > AP mode will work with the rt73.=20
> >=20
> > Just off the top of my head, one way of fixing this would be to mak=
e
> > IEEE80211_TX_CTL_NO_ACK also work the other way around: Now it is u=
sed
> > to tell the lower level not to wait for an ACK. Perhaps it could al=
so be
> > used by the lower level to tell higher levels that no ACK is ever g=
oing
> > to come e.g. because the hardware is incapable of supplying TX ACKs=
=2E The
> > mac80211 layer would be changed to check for IEEE80211_TX_CTL_NO_AC=
K. If
> > the flag was set it would skip setting IEEE80211_RADIOTAP_F_TX_FAIL=
 even
> > when the IEEE80211_TX_STAT_ACK is missing.
>=20
> Actually this isn't the complete picture, what you might need is a ne=
w flag
> IEEE80211_TX_CTL_UNKNOWN which then informs mac80211 that the
> frame has an unknown status, and that is something that could be pass=
ed on to
> userspace through radiotap later.
>=20
> This is better then setting a global "supports ACK reporting" flag, b=
ecause in case
> of rt61 one every x frames also has an unknown status because the txd=
one interrupt
> isn't happening for that frame. So that means you definately need a p=
er-frame flag
> to tell if the frame was acked, not-acked or if the status was unknow=
n.
>=20
> Ivo

>From what I understand the IEEE80211_TX_CTL_NO_ACK which is in the
flags of the ieee80211_tx_info struct, could be set from the driver for
each frame just as currently (not) done with the IEEE80211_TX_STAT_ACK
flag.=20

- Mikko
--
To unsubscribe from this list: send the line "unsubscribe linux-wireles=
s" in
the body of a message to majordomo@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html

  reply	other threads:[~2008-08-15 18:08 UTC|newest]

Thread overview: 3+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
     [not found] <1218813764.22679.11.camel@virkkmi-linux>
     [not found] ` <200808151844.13657.IvDoorn@gmail.com>
     [not found]   ` <1218822632.22679.73.camel@virkkmi-linux>
2008-08-15 17:58     ` mac80211 interprets missing TX_ACK flag as tx fail Ivo van Doorn
2008-08-15 18:08       ` Mikko Virkkilä [this message]
2008-08-15 23:18         ` Ivo van Doorn

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=1218823716.22679.78.camel@virkkmi-linux \
    --to=mikko.virkkila@bluegiga.com \
    --cc=ivdoorn@gmail.com \
    --cc=linux-wireless@vger.kernel.org \
    --cc=rt2400-devel@lists.sourceforge.net \
    --cc=tramp.enshrine.stephen@blacksapphire.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).