From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from mout.gmx.net (mout.gmx.net [212.227.17.20]) (using TLSv1.2 with cipher ECDHE-RSA-AES128-GCM-SHA256 (128/128 bits)) (No client certificate requested) by lists.bufferbloat.net (Postfix) with ESMTPS id 5E82D3B29E for ; Sat, 5 Jan 2019 14:27:24 -0500 (EST) Received: from hms-beagle2.lan ([77.179.58.192]) by mail.gmx.com (mrgmx101 [212.227.17.168]) with ESMTPSA (Nemesis) id 0LhjeH-1h1m9l382j-00mseB; Sat, 05 Jan 2019 20:27:16 +0100 Content-Type: text/plain; charset=utf-8 Mime-Version: 1.0 (Mac OS X Mail 11.5 \(3445.9.1\)) From: Sebastian Moeller In-Reply-To: <87lg3zxdyr.fsf@toke.dk> Date: Sat, 5 Jan 2019 20:27:13 +0100 Cc: Pete Heist , Cake List Content-Transfer-Encoding: quoted-printable Message-Id: References: <5482A3CA-9C36-4DDE-A858-24D8467F70C7@heistp.net> <8736q8yumt.fsf@toke.dk> <4C422792-7E51-4DBA-A229-FA7D3F987FB6@heistp.net> <87zhsgxdao.fsf@toke.dk> <87wonjxvss.fsf@toke.dk> <0077CC34-490F-4D76-82D3-BE37B27F2E1C@heistp.net> <49A6DCF8-BE98-47F4-9C66-6B4288390A58@heistp.net> <87tvinxos7.fsf@toke.dk> <87r2drxnal.fsf@toke.dk> <45D43135-318B-48AD-B09B-69BBB034CE12@heistp.net> <87o98vxm57.fsf@toke.dk> <797FCC60-0048-4EF6-80BC-19707E9173FB@heistp.net> <87lg3zxdyr.fsf@toke.dk> To: =?utf-8?Q?Toke_H=C3=B8iland-J=C3=B8rgensen?= X-Mailer: Apple Mail (2.3445.9.1) X-Provags-ID: V03:K1:yhoS9A2or/6Dv+u9KjzfSBNfYPJZz4fQZmD9zR0O3YtVlveHP3Y oLC0VxiHQRiks6yFHDqZpnmjGsgIExWAg2Y6dbFMsHKnyXXyvs1ihrm3V+JIa9DACNmy97d 5c+93GZX07VifqQ51vOZvpK7AOyAJez5AX+OEoKUp1IOYGO5lFB9F0EEkdBfzT/c9Wpgzqt NbfmQX8P+e6O9j3h8YTkQ== X-Spam-Flag: NO X-UI-Out-Filterresults: notjunk:1;V03:K0:eO8Kjkz0GdA=:XlHBLG5NprbEPyVHahoge5 D/LKmJ4E/oBqS413pBkvXCdtDcb9tVHfCAV0MHH3dgDJCdn6kugJ6o5e/4QhQdq3Tuck0QFrm OxWevC8C+3ToLELiBlG2+mEyPmnP1xr2TDUjF5wIRlT5tIY8hcdOgGDtQ8P+GPQhXVCyoJxfk Z3zHYnqacgL0Zm68eW97bJL88OXPzy72bBCUeWkhvpVFIQq8Yxh0qzn+CxMShhIh5ZlMl9K1E bgh9kZtVrEyoUOi0PBgDHtiABie+dXw5KuwCeFICFnO8ivDFRgYWLzMvsBX5LjaHYSb9d9uBO d23qbSqQAq69E+WzbMv4f7OkmTuFSiWSYaiUlGVEnsk6blajSNXovy2hKd4u2aoBdR51g+4y3 xssS6G3LwRhhRSvv8eLqBAe3y27onpuOq/Dsxsqz7WVB+GFMWZ0ZIO2+mpOx6IDGyJdht+rms Dh91UMKY0tbk6TlSo79I0+gTgAzxnyjIdLN0wPUDRKvICKM9eZkl5l2UW711uvrtynWyViOOn WjG0gnBxxDtQhlSeAI8nFmc4DUtay0o8Wpr3OdR5D+k05qztwxG50LcPLCMlC+r7iEGZrgsz7 fe4LgX0WmrMckKStG5m/u3kYzdz6/Pkdb9biv1VlCsjwaJ6oGNKFKdZwq9flwcg4BiE6vmzou kbL6S2oKu4pUzfroq/aHxul+m3druw6jiXbWsW2OOXBox0gxsOKWwzZMtO4BIcDwqSVkwGQMv yPYs6I++mpWqfWtta/baQCVuTxUoCQRT8PhfQMBTYLpPCfEQrmLQU8iGzqmXWHMVD5sYE91fl Fgko44/Q/xZmqZ8pdJN/F4lOVO9EzVk8HKo0cfijtwzymx5GT3wwWS9r38lsKH6fbWWYi9Y3Y AlhnhoYL/n7l+ro/BqA+KPrCewifGCJOVPtnUdmo3WgsH3wtHFhriVG5C209cs Subject: Re: [Cake] cake infinite loop(?) with hfsc on one-armed router X-BeenThere: cake@lists.bufferbloat.net X-Mailman-Version: 2.1.20 Precedence: list List-Id: Cake - FQ_codel the next generation List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sat, 05 Jan 2019 19:27:24 -0000 Dear all, I am most likely wrong, but did you have a look at = https://bugs.openwrt.org/index.php?do=3Ddetails&task_id=3D1136 yet? Especially https://bugzilla.kernel.org/show_bug.cgi?id=3D109581 and = https://www.spinics.net/lists/netdev/msg450655.html might be related to = Pete's bug. Then again, I might be wrong as the whole flurry of emails went past my = head quickly. Best Regards Sebastian > On Jan 5, 2019, at 17:32, Toke H=C3=B8iland-J=C3=B8rgensen = wrote: >=20 > Pete Heist writes: >=20 >>> On Jan 5, 2019, at 2:35 PM, Toke H=C3=B8iland-J=C3=B8rgensen = wrote: >>>=20 >>> Pete Heist writes: >>>=20 >>>>> On Jan 5, 2019, at 2:10 PM, Toke H=C3=B8iland-J=C3=B8rgensen = wrote: >>>>>=20 >>>>> Hmm, that's odd. Could you try adding this debugging line in >>>>> adjust_parent_qlen(), right before the sch->q.qlen +=3D n line: >>>>>=20 >>>>> net_info_ratelimited("Adjusting parent qdisc %d with pkt = +=3D %d, len +=3D %d", >>>>> parentid, n, len); >>>>>=20 >>>>> And see if you actually get any of those lines in your dmesg? >>>>=20 >>>> I do see the messages twice, then not after that in the rest of the >>>> output... >>>=20 >>> Right. Looking at the HFSC code some more, I think the bug is = actually >>> caused by another, but related, interaction between HFSC and CAKE. >>>=20 >>> Specifically, this line: >>>=20 >>> = https://elixir.bootlin.com/linux/v3.16.7/source/net/sched/sch_hfsc.c#L1605= >>>=20 >>> where HFSC checks whether the child queue len is 1, which it = interprets >>> as the event that activates that queue. However, because CAKE splits = the >>> packet, this check will fail, and the HFSC class will not be = activated. >>> This also explains why you only see the bug with HFSC, and not with = HTB >>> (although I do think that we still need to update the hierarchy). >>>=20 >>> The good news it that it is a fairly simple to fix in HFSC. The bad = news >>> is that it's something that's hard to work around from the = out-of-tree >>> CAKE... >>=20 >> Aha, well, I wonder if we=E2=80=99ll see this problem with other = qdiscs- maybe >> cbq, if I ever get a chance to try it (not hurrying yet). Ideally = this >> interaction between qdiscs would be clarified somewhere, at some >> point. :) >>=20 >> Thanks a lot for doing the discovery though! >=20 > You're welcome, and thanks for you help :) >=20 >> We may not have hfsc+cake with GSO splitting on older kernels very >> soon, but what should we do with this? There=E2=80=99s nobody in = MAINTAINERS >> for hfsc, so we may not get much of a response to any bug >> submissions... >=20 > $ ./scripts/get_maintainer.pl net/sched/sch_hfsc.c=20 > Jamal Hadi Salim (maintainer:TC subsystem) > Cong Wang (maintainer:TC subsystem) > Jiri Pirko (maintainer:TC subsystem) > "David S. Miller" (maintainer:NETWORKING = [GENERAL]) > netdev@vger.kernel.org (open list:TC subsystem) >=20 > I'll submit a patch sometime next week, and also look into the qlen > adjustment for CAKE GSO splitting... >=20 > -Toke > _______________________________________________ > Cake mailing list > Cake@lists.bufferbloat.net > https://lists.bufferbloat.net/listinfo/cake