From: Chr <chunkeey@web.de>
To: Larry Finger <Larry.Finger@lwfinger.net>
Cc: John W Linville <linville@tuxdriver.com>, linux-wireless@vger.kernel.org
Subject: Re: [PATCH] p54: Fix for TX sequence number problem that resulted from commit 741b4fbc44
Date: Fri, 8 Aug 2008 20:38:48 +0200 [thread overview]
Message-ID: <200808082038.48840.chunkeey@web.de> (raw)
In-Reply-To: <489C5833.2080009@lwfinger.net>
On Friday 08 August 2008 16:29:07 Larry Finger wrote:
> Chr wrote:
> > ???
> > What is this for? The firmware does the sequence number counting
> > and will simply override this field without looking at it... Are you sure
> > this really fixes anything?
> >
> > That said: the firmware will always report the sequence number of every
> > tx'ed frame as a part of p54_frame_sent_hdr in the _free_ tx callback...
>
> Without this patch, my p54usb would go offline every 2-3 hours. To recover,
> the driver had to be unloaded and reloaded. With it, the device has never
> gone offline for as long as I have tested. I have no idea what the firmware
> does, but it has helped my system.
well, since I got the usb device I had nothing but problems with it.
e.g: one single ping -s 1400 $AP can bring it down and a _replug_ is necessary.
The minipci card on the other hand is very stable.
I guess p54usb needs some mutexes & udelays here & there.
on-topic: I digged a bit in the logs:
http://jbnote.free.fr/prism54usb/data/usbsnoop-logs/
and there "usbsnoop_old_drv_ver1.log.bz2"
you can easily find tx' data frames by searching for
"00000010: 10 40" string.
to cut the case here is a extract (only ieee 80211 header @line 26218)
08 01 <= frame control
00 00 <= duration ZERO
00 06 25 bb 9d 4b <= mac
00 0f 66 17 46 6b <= mac
ff ff ff ff ff ff <= mac
00 00 <= sequence ZERO
aa aa 03 <= 802.2 LLC header
the next one is at line 27188... and so down to end of packages at line 329241.
there isn't one single package where the sequence number is not zero!
So the problem must be somewhere else! what happens when:
if (info->flags & IEEE80211_TX_CTL_ASSIGN_SEQ) {
if (info->flags & IEEE80211_TX_CTL_FIRST_FRAGMENT)
priv->seqno += 0x10;
ieee80211hdr->seq_ctrl &= cpu_to_le16(IEEE80211_SCTL_FRAG);
ieee80211hdr->seq_ctrl |= cpu_to_le16(priv->seqno);
ieee80211hdr->seq_ctrl &= cpu_to_le16(IEEE80211_SCTL_FRAG);
}
(yeah a new definition for idiotic! but it's about the same amount of of clock cycles).
Regards,
Chr
next prev parent reply other threads:[~2008-08-08 18:36 UTC|newest]
Thread overview: 21+ messages / expand[flat|nested] mbox.gz Atom feed top
2008-08-05 16:23 [PATCH] p54: Fix for TX sequence number problem that resulted from commit 741b4fbc44 Larry Finger
2008-08-08 8:26 ` Chr
2008-08-08 14:29 ` Larry Finger
2008-08-08 18:38 ` Chr [this message]
2008-08-09 16:02 ` Larry Finger
2008-08-09 16:43 ` Chr
2008-08-09 18:11 ` Larry Finger
2008-08-10 14:19 ` Larry Finger
2008-08-10 22:27 ` Chr
2008-08-10 23:04 ` Larry Finger
2008-08-13 22:15 ` Chr
2008-08-15 18:34 ` Chr
2008-08-15 19:26 ` Johannes Berg
2008-08-15 20:15 ` Chr
2008-08-15 20:17 ` Johannes Berg
2008-08-15 21:06 ` Chr
2008-08-15 21:13 ` Johannes Berg
2008-08-16 0:34 ` Larry Finger
2008-08-16 2:21 ` Chr
2008-08-16 14:00 ` Larry Finger
2008-08-16 14:38 ` Chr
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=200808082038.48840.chunkeey@web.de \
--to=chunkeey@web.de \
--cc=Larry.Finger@lwfinger.net \
--cc=linux-wireless@vger.kernel.org \
--cc=linville@tuxdriver.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).