From: "Toke Høiland-Jørgensen" <toke@redhat.com>
To: Johannes Berg <johannes@sipsolutions.net>,
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: Thu, 12 Dec 2019 11:45:42 +0100 [thread overview]
Message-ID: <87y2vhesa1.fsf@toke.dk> (raw)
In-Reply-To: <aa22bfce34e5a938e439b0507296a8b6a23f5c61.camel@sipsolutions.net>
Johannes Berg <johannes@sipsolutions.net> writes:
> 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 ... :)
Right, I guess we'll have to go and measure. Let's leave it as-is for
now, then, and we can adjust in a separate patch.
> You're the expert, I'm just poking holes into it ;-)
And you're doing that very well, as it turns out; thanks! ;)
-Toke
next prev parent reply other threads:[~2019-12-12 10:45 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
2019-12-12 10:45 ` Toke Høiland-Jørgensen [this message]
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=87y2vhesa1.fsf@toke.dk \
--to=toke@redhat.com \
--cc=axboe@kernel.dk \
--cc=emmanuel.grumbach@intel.com \
--cc=johannes@sipsolutions.net \
--cc=linux-wireless@vger.kernel.org \
--cc=luciano.coelho@intel.com \
--cc=netdev@vger.kernel.org \
/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).