From: Johannes Berg <johannes@sipsolutions.net>
To: "Toke Høiland-Jørgensen" <toke@redhat.com>,
"Jens Axboe" <axboe@kernel.dk>,
"Emmanuel Grumbach" <emmanuel.grumbach@intel.com>,
"Luca Coelho" <luciano.coelho@intel.com>
Cc: "linux-wireless@vger.kernel.org" <linux-wireless@vger.kernel.org>,
Networking <netdev@vger.kernel.org>
Subject: Re: iwlwifi warnings in 5.5-rc1
Date: Wed, 11 Dec 2019 22:18:21 +0100 [thread overview]
Message-ID: <aa22bfce34e5a938e439b0507296a8b6a23f5c61.camel@sipsolutions.net> (raw)
In-Reply-To: <87k172gbrn.fsf@toke.dk>
On Wed, 2019-12-11 at 15:47 +0100, Toke Høiland-Jørgensen wrote:
> > Say you have some queues - some (Q1-Qn) got a LOT of traffic, and
> > another (Q0) just has some interactive traffic.
> >
> > You could then end up in a situation where you have 24ms queued up on
> > Q1-Qn (with n high enough to not have hit the per-queue AQL limit),
> > right?
> >
> > Say also the last frame on Q0 was dequeued by the hardware, but the
> > tx_dequeue() got NULL because of the AQL limit having been eaten up by
> > all the packets on Q1-Qn.
> >
> > Now you'll no longer get a new dequeue attempt on Q0 (it was already
> > empty last time, so no hardware reclaim to trigger new dequeues), and a
> > new dequeue on the *other* queues will not do anything for this queue.
>
> Oh, right, I see; yeah, that could probably happen. I guess we could
> either kick all available queues whenever the global limit goes from
> "above" to "below"; or we could remove the "return NULL" logic from
> tx_dequeue() and rely on next_txq() to throttle. I think the latter is
> probably simpler, but I'm a little worried that the throttling will
> become too lax (because the driver can keep dequeueing in the same
> scheduling round)...
I honestly have no idea what's better ... :) You're the expert, I'm just
poking holes into it ;-)
johannes
next prev parent reply other threads:[~2019-12-11 21:18 UTC|newest]
Thread overview: 25+ messages / expand[flat|nested] mbox.gz Atom feed top
2019-12-10 20:46 iwlwifi warnings in 5.5-rc1 Jens Axboe
2019-12-11 8:36 ` Johannes Berg
2019-12-11 8:53 ` Toke Høiland-Jørgensen
2019-12-11 10:11 ` Johannes Berg
2019-12-11 10:23 ` Toke Høiland-Jørgensen
2019-12-11 11:51 ` Johannes Berg
2019-12-11 13:42 ` Johannes Berg
2019-12-11 14:04 ` Toke Høiland-Jørgensen
2019-12-11 14:12 ` Johannes Berg
2019-12-11 14:47 ` Toke Høiland-Jørgensen
2019-12-11 21:18 ` Johannes Berg [this message]
2019-12-12 10:45 ` Toke Høiland-Jørgensen
2019-12-11 14:02 ` Toke Høiland-Jørgensen
2019-12-11 21:17 ` Johannes Berg
2019-12-12 10:55 ` Toke Høiland-Jørgensen
2019-12-12 11:00 ` Johannes Berg
2019-12-21 0:55 ` Jens Axboe
2019-12-21 9:17 ` Johannes Berg
2019-12-21 13:45 ` Jens Axboe
2019-12-11 13:45 ` Johannes Berg
2019-12-11 14:09 ` Toke Høiland-Jørgensen
2019-12-11 14:13 ` Johannes Berg
2019-12-11 14:55 ` Toke Høiland-Jørgensen
2019-12-11 21:19 ` Johannes Berg
2019-12-12 10:55 ` Toke Høiland-Jørgensen
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=aa22bfce34e5a938e439b0507296a8b6a23f5c61.camel@sipsolutions.net \
--to=johannes@sipsolutions.net \
--cc=axboe@kernel.dk \
--cc=emmanuel.grumbach@intel.com \
--cc=linux-wireless@vger.kernel.org \
--cc=luciano.coelho@intel.com \
--cc=netdev@vger.kernel.org \
--cc=toke@redhat.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).