From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from mail-wm1-x341.google.com (mail-wm1-x341.google.com [IPv6:2a00:1450:4864:20::341]) (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 286A53BA8E for ; Fri, 4 Jan 2019 17:10:10 -0500 (EST) Received: by mail-wm1-x341.google.com with SMTP id n190so2362614wmd.0 for ; Fri, 04 Jan 2019 14:10:10 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=heistp.net; s=google; h=mime-version:subject:from:in-reply-to:date:cc :content-transfer-encoding:message-id:references:to; bh=/5UvPyyzMwP9AquRlNuD3i2bPFTfZ7Yi1RiGSe0vLJE=; b=fOZSeV3lHiSpCCbe+p95Gxm/L3sS7gOHLHj+2V+LRTKSEuOv1YG8SeoJg6w6XqpdyA b8kfNeuZ9NY4W6RUCfvu/YqF0oGPIv+EjpkRvvQx2AfI126YNHIJjw8weoo6GA5B8aaC QRwgKTe2ydiyWv0NwbJPRvY5F05bqP8wmjYuUPV2SfERjT8to8VSBzYOrTzxlgGzX7ij tScavR+PBofML1nC/V29loYe79quUgKFFw2TapKaMgA9a4TNgLGiku79zNh50q4IFW2B nW5nyRJKqKJbBwngGv9JqCMVcvyMWNsxuekRklQMgi1XZE0FOYah3fiJZxEt25VoeX/A IpcA== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:mime-version:subject:from:in-reply-to:date:cc :content-transfer-encoding:message-id:references:to; bh=/5UvPyyzMwP9AquRlNuD3i2bPFTfZ7Yi1RiGSe0vLJE=; b=GySs71zjzgqp3LS6j1VFIAvAORBBJYi1HpvWNk68u7JkXBvb6jeSf7+vn3Hm5MR4jb axBR15KQu4gtEyovwp4fIOf4l1DQCEfqsXgQtqbsKOkygHaWj4w3a3UFiXfJfQRopPo8 nmrTRV3co/aSlxIlzDvLT0EWuxVWTz9vVO3IGltqTDXv0xR0O4D3MRlL60Oolr8qFt0T Actk2a5OD9a5HDxJOrnJ7CPRjBUvGUDhvCmgvfvNzwAA3dtJRhrlkTwN52N+XY7lfNNq QJyPRnmCiE3RFObfe0Aj/rdxoozX8lvaoMLel91UmJXw2zgKb7jeAbkPWXXG1bK4jTA1 PxkA== X-Gm-Message-State: AJcUukfetzhFPHdPRydJx6arnMuy7H4m08jh8SBR35UFQMyunhpxd5ur 6oY+uWVu7GlBhuvZKkkLliLr0g== X-Google-Smtp-Source: ALg8bN5iMVk6nkXFvE9iYjYB1UvWVewKpXY93kbmpHH+RSeeZJt33p7GsRMb3W/mU+mJEDGGl1wprw== X-Received: by 2002:a1c:22c5:: with SMTP id i188mr2524719wmi.39.1546639809193; Fri, 04 Jan 2019 14:10:09 -0800 (PST) Received: from tron.luk.heistp.net (h-1169.lbcfree.net. [185.193.85.130]) by smtp.gmail.com with ESMTPSA id u204sm1713805wmu.30.2019.01.04.14.10.08 (version=TLS1_2 cipher=ECDHE-RSA-AES128-GCM-SHA256 bits=128/128); Fri, 04 Jan 2019 14:10:08 -0800 (PST) Content-Type: text/plain; charset=utf-8 Mime-Version: 1.0 (Mac OS X Mail 11.5 \(3445.9.1\)) From: Pete Heist In-Reply-To: <8736q8yumt.fsf@toke.dk> Date: Fri, 4 Jan 2019 23:10:07 +0100 Cc: Cake List Content-Transfer-Encoding: quoted-printable Message-Id: <4C422792-7E51-4DBA-A229-FA7D3F987FB6@heistp.net> References: <5482A3CA-9C36-4DDE-A858-24D8467F70C7@heistp.net> <8736q8yumt.fsf@toke.dk> To: =?utf-8?Q?Toke_H=C3=B8iland-J=C3=B8rgensen?= X-Mailer: Apple Mail (2.3445.9.1) 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: Fri, 04 Jan 2019 22:10:10 -0000 > On Jan 4, 2019, at 10:34 PM, Toke H=C3=B8iland-J=C3=B8rgensen = wrote: >=20 > Pete Heist writes: >=20 >> Ok, the lockup goes away if you use no-split-gso on the cake qdiscs = for the default traffic (noted below in the drr and hfsc cases with "!!! = must use no-split-gso here !!!"). Only I=E2=80=99d like my 600 =CE=BCs = back. :) >>=20 >> This smells of a bug Toke fixed on Sep 12, 2018 in = 42e87f12ea5c390bf5eeb658c942bc810046160a, but then reverted in the next = commit because it was fixed upstream. However, if I re-apply that = commit, it still doesn=E2=80=99t fix it. >>=20 >> Perhaps there are more cases where skb_reset_mac_len(skb) needs to be = called somewhere for VLAN support? >>=20 >> I managed to capture some output from what happens to hfsc: >>=20 >> [ 683.864456] ------------[ cut here ]------------ >> [ 683.869116] WARNING: CPU: 1 PID: 11 at net/sched/sch_hfsc.c:1427 >> 0xf9ced4ef() >=20 > So this seems to be this line: >=20 > WARN_ON(next_time =3D=3D 0); >=20 > See = https://elixir.bootlin.com/linux/v3.16.7/source/net/sched/sch_hfsc.c#L1427= >=20 > Which seems to indicate that HFSC can't find the next class to = schedule. > Not entirely sure why, nor why this only happens with CAKE as a qdisc. > But I don't think it's actually an infinite loop that's causing it... Ok, fwiw one doesn=E2=80=99t actually need a one-armed router or VLANs = to reproduce this. Just do this: tc qdisc add dev $IFACE root handle 1: hfsc default 1 tc class add dev $IFACE parent 1: classid 1:1 hfsc ls rate $RATE ul rate = $RATE tc qdisc add dev $IFACE parent 1:1 cake # add split-gso here, or else=E2=80= =A6 I=E2=80=99ve tried it as far as 4.9.0-8, but no farther. It=E2=80=99s = not much of a priority for me now that I have a workaround for it... Pete