linux-wireless.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
From: "Toke Høiland-Jørgensen" <toke@toke.dk>
To: Felix Fietkau <nbd@nbd.name>
Cc: linux-wireless <linux-wireless@vger.kernel.org>,
	Michal Kazior <michal.kazior@tieto.com>
Subject: Re: TCP performance regression in mac80211 triggered by the fq code
Date: Wed, 20 Jul 2016 16:45:28 +0200	[thread overview]
Message-ID: <87oa5snzav.fsf@toke.dk> (raw)
In-Reply-To: <11fa6d16-21e2-2169-8d18-940f6dc11dca@nbd.name> (Felix Fietkau's message of "Tue, 12 Jul 2016 12:09:24 +0200")

Felix Fietkau <nbd@nbd.name> writes:

> - if I put a hack in the fq code to force the hash to a constant value
> (effectively disabling fq without disabling codel), the problem
> disappears and even multiple streams get proper performance.

There's definitely something iffy about the hashing. Here's the output
relevant line from the aqm debug file after running a single TCP stream
for 60 seconds to that station:

ifname addr tid ac backlog-bytes backlog-packets flows drops marks overlimit collisions
tx-bytes tx-packets
wlp2s0 04:f0:21:1e:74:20 0 2 0 0 146 16 0 0 0 717758966 467925

(there are two extra fields here; I added per-txq CoDel stats, will send
a patch later).

This shows that the txq has 146 flows associated from that one TCP flow.
Looking at this over time, it seems that each time the queue runs empty
(which happens way too often, which is what I was originally
investigating), another flow is assigned.

Michal, any idea why? :)

-Toke

  parent reply	other threads:[~2016-07-20 14:45 UTC|newest]

Thread overview: 23+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2016-07-12 10:09 TCP performance regression in mac80211 triggered by the fq code Felix Fietkau
2016-07-12 12:13 ` Dave Taht
2016-07-12 13:21   ` Felix Fietkau
2016-07-12 14:02     ` Dave Taht
2016-07-13  7:57       ` Dave Taht
2016-07-13  8:53         ` Felix Fietkau
2016-07-13  9:13           ` Dave Taht
2016-07-19 13:10       ` Michal Kazior
2016-07-12 12:28 ` Toke Høiland-Jørgensen
2016-07-12 12:44   ` Dave Taht
2016-07-12 12:57     ` Toke Høiland-Jørgensen
2016-07-12 13:03       ` Dave Taht
2016-07-12 13:22     ` Felix Fietkau
2016-07-12 13:23   ` Felix Fietkau
2016-07-18 21:49   ` Toke Høiland-Jørgensen
2016-07-18 22:02     ` Dave Taht
2016-07-19 13:13 ` Michal Kazior
2016-07-19 14:32   ` Felix Fietkau
2016-07-20 14:45 ` Toke Høiland-Jørgensen [this message]
2016-07-20 15:24   ` Toke Høiland-Jørgensen
2016-07-25  5:15     ` Michal Kazior
2016-07-27 17:31       ` Toke Høiland-Jørgensen
2016-07-22 10:51 ` 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=87oa5snzav.fsf@toke.dk \
    --to=toke@toke.dk \
    --cc=linux-wireless@vger.kernel.org \
    --cc=michal.kazior@tieto.com \
    --cc=nbd@nbd.name \
    /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).