linux-wireless.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
From: James Cameron <quozl@laptop.org>
To: Belisko Marek <marek.belisko@gmail.com>
Cc: Amitkumar Karwar <akarwar@marvell.com>,
	"linux-wireless@vger.kernel.org" <linux-wireless@vger.kernel.org>,
	Avinash Patil <patila@marvell.com>
Subject: Re: mwifiex_usb_submit_rx_urb: dev_alloc_skb failed when conected to 5GHz
Date: Wed, 15 Oct 2014 07:44:35 +1100	[thread overview]
Message-ID: <20141014204435.GA29124@us.netrek.org> (raw)
In-Reply-To: <CAAfyv34btPrqW5Z=wzdFi7e+tOYF6XPdxY6sKcMy0CBzBsVFqA@mail.gmail.com>

On Tue, Oct 14, 2014 at 12:48:07PM +0200, Belisko Marek wrote:
> Dear James Cameron,
> 
> On Tue, Oct 14, 2014 at 12:20 PM, James Cameron <quozl@laptop.org> wrote:
> > On Tue, Oct 14, 2014 at 10:25:01AM +0200, Belisko Marek wrote:
> >> Hi Amitkumar,
> >>
> >> On Tue, Oct 14, 2014 at 9:08 AM, Amitkumar Karwar <akarwar@marvell.com> wrote:
> >> > Hi Marek,
> >> >
> >> > > I tried both (slightly modified as we're in 3.9 kernel) but
> >> > > issue is still reproducible. My patch against 3.9 sources:
> >> >
> >> > Thanks a lot for the tests.
> >> >
> >> > > One thing which is not yet still clear to me why kernel console
> >> > > is completely unresponsive when receiving packets in high
> >> > > rates. When use iperf (on client) with -b40m it is OK but when
> >> > > increase to -b100m then console is completely unresponsive until
> >> > > iperf finish.
> >> >
> >> > Does the system recover when "-b100M" iperf is finished? Can we
> >> > run iperf with "-b40M" later?  Do you see "dev_alloc_skb failed"
> >> > messages in dmesg when console is unresponsive?
> >> When we get "dev_alloc_skb failed" then interface is dead (cannot
> >> ping ...) so no recovery is possible only system reboot.
> >
> > This symptom was familiar to me, but on sdio.c, which is very
> > different code.
> >
> > I've had a brief look at usb.c and offer the following comments:
> >
> > - a list of six data endpoint urb is allocated in mwifiex_usb_rx_init,
> >   because MWIFIEX_RX_DATA_URB is 6,
> >
> > - when data endpoint urb is submitted, a new skb is allocated, in
> >   mwifiex_usb_submit_rx_urb, and this is the only source of
> >   "dev_alloc_skb failed" message,
> >
> > - in normal situation, when data endpoint urb is complete, skb is
> >   either freed or handed up to mwifiex_usb_recv, and the urb is
> >   resubmitted, which causes a new skb to be allocated.
> >
> > - if "dev_alloc_skb failed" message appears, one data endpoint urb has
> >   been lost and is not re-used,
> >
> > - if six "dev_alloc_skb failed" messages appear, the interface should
> >   be dead for data receive only.
> >
> > Amitkumar mentioned this on 9th October; "corresponding URB won't get
> > submitted".  I think this should be fixed; dev_alloc_skb should be
> > harmless failure, please retry.
> >
> > I don't see why interface is dead with only one "dev_alloc_skb
> > failed" message.
> Maybe my description wasn't  not correct. I see 6 "dev_alloc_skb
> failed" messages and then interface is dead
> as you wrote.

Thanks.  That is what I expected.

> >> I don't see  dev_alloc_skb failed when console is unresponsive.
> >> >
> >> > > Any other ideas
> >> > > what to change to check? Thanks.
> >> >
> >> > Could you please share dmesg log with dynamic debug enabled (using
> >> > attached script) captured when the problem occurs?
> >> I tried to capture logs but when enable DYNAMIC_DEBUG I cannot
> >> reproduce issue (running test > 30 minutes without allocation
> >> failure).
> >
> > Yes, I've seen similar; turn on debugging, and timing critical bug
> > goes away.
> >
> > Serial console?  If so, try turning it off, and logging to dmesg
> > buffer only.
> When turning off serial console how then I get kernel messages from
> dmesg buffer?

I use three techniques depending on how usable the system is afterwards:

0.  capture kernel messages to disk, using rsyslog or other user space
assistance; often there is enough information saved before the system
is unresponsive,

1.  type dmesg at a console shell prompt,

2.  watchdog trigger system reset, and in firmware locate the dmesg
buffer structures in memory, and dump them to serial.

http://lists.laptop.org/pipermail/devel/2012-January/034253.html

-- 
James Cameron
http://quozl.linux.org.au/

  reply	other threads:[~2014-10-14 20:44 UTC|newest]

Thread overview: 26+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2014-09-11  8:57 mwifiex_usb_submit_rx_urb: dev_alloc_skb failed when conected to 5GHz Belisko Marek
2014-09-11 15:09 ` Amitkumar Karwar
2014-09-11 19:14   ` Belisko Marek
2014-09-17  9:57   ` Belisko Marek
2014-09-17 10:52     ` Amitkumar Karwar
2014-09-17 12:07       ` Belisko Marek
2014-09-17 12:18         ` Belisko Marek
2014-09-17 21:57       ` James Cameron
2014-10-09  8:31       ` Belisko Marek
2014-10-09  9:30         ` Amitkumar Karwar
2014-10-09 11:57           ` Belisko Marek
2014-10-13 13:41             ` Amitkumar Karwar
2014-10-14  6:37               ` Belisko Marek
2014-10-14  7:08                 ` Amitkumar Karwar
2014-10-14  8:25                   ` Belisko Marek
2014-10-14 10:20                     ` James Cameron
2014-10-14 10:48                       ` Belisko Marek
2014-10-14 20:44                         ` James Cameron [this message]
2014-10-22 13:36                     ` Belisko Marek
2014-10-23 12:40                       ` Amitkumar Karwar
2014-10-28 12:35                         ` Belisko Marek
2014-10-29  9:54                           ` Amitkumar Karwar
2014-10-29 10:50                             ` Belisko Marek
2014-10-30 10:01                               ` Amitkumar Karwar
2014-10-30 13:56                                 ` Belisko Marek
2014-10-30 16:21                                   ` Amitkumar Karwar

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=20141014204435.GA29124@us.netrek.org \
    --to=quozl@laptop.org \
    --cc=akarwar@marvell.com \
    --cc=linux-wireless@vger.kernel.org \
    --cc=marek.belisko@gmail.com \
    --cc=patila@marvell.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).