All of lore.kernel.org
 help / color / mirror / Atom feed
From: Kalle Valo <kalle.valo@nokia.com>
To: Vivek Natarajan <vivek.natraj@gmail.com>
Cc: "linux-wireless\@vger.kernel.org" <linux-wireless@vger.kernel.org>
Subject: Re: WARN_ON message hit on enabling power save.
Date: Wed, 28 Jan 2009 21:59:15 +0200	[thread overview]
Message-ID: <87wscffbho.fsf@nokia.com> (raw)
In-Reply-To: <20090128160332.GA10883@myhost.users.atheros.com> (ext Vivek Natarajan's message of "Wed\, 28 Jan 2009 17\:03\:32 +0100")

Vivek Natarajan <vivek.natraj@gmail.com> writes:

> Hello Kalle,

Hi Vivek,

> In the function 'ieee80211_master_start_xmit',
> ieee80211_stop_queues_by_reason is called and a  ps_disable_work is
> queued where wake_queues is called. Can you please clarify me on why the
> queues are stopped and started.

Originally they were in ieee80211_subif_start_xmit() before you moved
them. The reason why added them was to preserve the order of first
disabling IEEE80211_CONF_PS and after that sending the data frames.
Because ieee80211_hw_config() must sleep, I decided to do it in a
workqueue.

> If at all that needs to be stopped, wouldn't
> ieee80211_dynamic_ps_enable_work be a better place to do it?

That's was too late. In that case some of the date frames might have
been already transmitted to the driver before IEEE80211_CONF_PS is
disabled.

> The issue is  while this ps_disable_work is queued,
> netif_subqueue_stopped() is checked in _ieee80211_tx which ultimately
> results in a WARN_ON(info->flags & IEEE80211_TX_CTL_AMPDU) in
> ieee80211_tx. Please see the code for clarification.
>
> So, while I try to ping after enabling power save, the packets are
> dropped due to this warning. The warning message is not at all
> related to the issue and hence I feel that this is an inappropriate
> place for that WARN_ON.
>
> The fix for the issue is to remove the stop/start queues if it is not
> really needed or the better fix is to remove this inappropriate warning
> message. Please clarify me if I'm wrong.

Unfortunately I'm not familiar with the 11n implementation. I will
take a look at this more closely tomorrow and will get back to you.

-- 
Kalle Valo

      reply	other threads:[~2009-01-28 20:01 UTC|newest]

Thread overview: 2+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2009-01-28 16:03 WARN_ON message hit on enabling power save Vivek Natarajan
2009-01-28 19:59 ` Kalle Valo [this message]

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=87wscffbho.fsf@nokia.com \
    --to=kalle.valo@nokia.com \
    --cc=linux-wireless@vger.kernel.org \
    --cc=vivek.natraj@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 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.