From mboxrd@z Thu Jan 1 00:00:00 1970 Authentication-Results: mail.toke.dk; dkim=pass header.d=tu-berlin.de header.i=@tu-berlin.de header.a=rsa-sha256 header.s=dkim-tub26 header.b=aocNnEVm; arc=none (Message is not ARC signed); dmarc=none Received: from mailrelay.tu-berlin.de (mailrelay.tu-berlin.de [130.149.7.70]) by mail.toke.dk (Postfix) with ESMTPS id 464DE135C981 for ; Sat, 18 Jul 2026 17:06:32 +0200 (CEST) DKIM-Signature: v=1; a=rsa-sha256; c=simple/relaxed; d=tu-berlin.de; s=dkim-tub26; t=1784387192; h=message-id:date:mime-version:subject:to:cc:references: from:in-reply-to:content-transfer-encoding; bh=lrHGpb4MGAOGEcAN0C6vTEWtRmFxRuxO7XqicIm2G+4=; b=aocNnEVm2PR3wDETide0Kf/0Y2IIK5FbLQM91VbaBw0AadH4ad/ZYTbo 3UoYWQ2fI+uOH8nsUR6OCt171RtXGB9crgenvb0ruddZ2gv2PiCVnICJz 9vfhDN3+j2RXe+vtk0EYN33RUDtl+yNRMb6qTGQR5ZgUfe4lzyQvbsh6K ngE23TsBTVNN1sVk0dTqc9p84q3fSYShB6x7H/USd/6zKfiZNy3JxsgyI oU52oe9xDrey1x8T5XaOq3uxgXFWQCMi0NUflwSdNysfKHDxit573D4RN Le6P0tQC4zIElK2T+Jz4bdoam3KhMmoaiolcJCb2t2Y0o5zvuhg4ZsRAF w==; X-CSE-ConnectionGUID: nitGZflbRE2zT8Cu6J5MmA== X-CSE-MsgGUID: Rg37fanBSlGbdO3HoeOJ6w== X-IronPort-AV: E=Sophos;i="6.25,171,1779141600"; d="scan'208";a="50146831" Received: from mail.tu-berlin.de ([141.23.12.141]) by mailrelay.tu-berlin.de with ESMTP; 18 Jul 2026 17:06:31 +0200 Message-ID: <431c1b00-1fd3-41e1-8e8e-9cc1738ae387@tu-berlin.de> Date: Sat, 18 Jul 2026 17:06:28 +0200 MIME-Version: 1.0 User-Agent: Mozilla Thunderbird To: =?UTF-8?Q?Toke_H=C3=B8iland-J=C3=B8rgensen?= , Jamal Hadi Salim , Jiri Pirko , "David S. Miller" , Eric Dumazet , Jakub Kicinski , Paolo Abeni , Simon Horman CC: , , , Mike Pham References: <20260716-sch_cake-skip-clearing-tins-v1-1-d9787df20c28@tu-berlin.de> <87wluuj9ue.fsf@toke.dk> Content-Language: en-US From: =?UTF-8?Q?Jonas_K=C3=B6ppeler?= Autocrypt: addr=j.koeppeler@tu-berlin.de; keydata= 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 In-Reply-To: <87wluuj9ue.fsf@toke.dk> Content-Type: text/plain; charset="utf-8"; format="flowed" Content-Transfer-Encoding: base64 Message-ID-Hash: F7TQIEIVND7VCTR3D5CGO5U2PZGGPLWQ X-Message-ID-Hash: F7TQIEIVND7VCTR3D5CGO5U2PZGGPLWQ X-MailFrom: j.koeppeler@tu-berlin.de X-Mailman-Rule-Misses: dmarc-mitigation; no-senders; approved; loop; banned-address; emergency; member-moderation; nonmember-moderation; administrivia; implicit-dest; max-recipients; max-size; news-moderation; no-subject; digests; suspicious-header X-Mailman-Version: 3.3.10 Precedence: list Subject: [Cake] Re: [PATCH net-next] net/sched: sch_cake: skip clearing unused tins during rate adjustment List-Id: Cake - FQ_codel the next generation Archived-At: List-Archive: List-Help: List-Owner: List-Post: List-Subscribe: List-Unsubscribe: T24gNy8xNy8yNiAxMDozMSwgVG9rZSBIw7hpbGFuZC1Kw7hyZ2Vuc2VuIHdyb3RlOg0KPiBKb25h cyBLw7ZwcGVsZXIgPGoua29lcHBlbGVyQHR1LWJlcmxpbi5kZT4gd3JpdGVzOg0KPiANCj4+IFdo ZW4gY2FrZV9jb25maWd1cmVfcmF0ZXMoKSBpcyBjYWxsZWQgZnJvbSB0aGUgZGVxdWV1ZSBwYXRo IHdpdGgNCj4+IHJhdGVfYWRqdXN0PXRydWUsIGl0IG9ubHkgbmVlZHMgdG8gdXBkYXRlIHRoZSBy YXRlIHBhcmFtZXRlcnMuIFRoZQ0KPj4gbG9vcCB0aGF0IGNsZWFycyB0aGUgdW51c2VkIHRpbnMg aXMgYm90aCB1bm5lY2Vzc2FyeSBhbmQgaGFybWZ1bCBpbg0KPj4gdGhpcyBwYXRoOg0KPj4NCj4+ ICAgLSBjYWtlX2NsZWFyX3RpbigpIG92ZXJ3cml0ZXMgcS0+Y3VyX3RpbiBhbmQgcS0+Y3VyX2Zs b3csIHdoaWNoIGFyZQ0KPj4gICAgIGFjdGl2ZWx5IHVzZWQgYnkgY2FrZV9kZXF1ZXVlKCksIGNv cnJ1cHRpbmcgdGhlIGRlcXVldWUgc3RhdGUuDQo+PiAgIC0gaXRlcmF0aW5nIG92ZXIgdGhlIHVu dXNlZCB0aW5zIGFuZCB0aGVpciBpbnRlcm5hbCBxdWV1ZXMgdG8gcHVyZ2UNCj4+ICAgICBwYWNr ZXRzIGFkZHMgbmVlZGxlc3Mgb3ZlcmhlYWQgdG8gdGhlIGhvdCBwYXRoLg0KPj4NCj4+IFNraXAg dGhlIGVudGlyZSBsb29wIHdoZW4gcmF0ZV9hZGp1c3QgaXMgc2V0LCBhcyBuZWl0aGVyDQo+PiBj YWtlX2NsZWFyX3RpbigpIG5vciB0aGUgbXR1X3RpbWUgdXBkYXRlIGFyZSBuZWVkZWQgd2hlbiBv bmx5IHRoZQ0KPj4gcmF0ZSBjaGFuZ2VzLg0KPj4NCj4+IEZpeGVzOiAxNWMyNzE1YTUyNjQgKCJu ZXQvc2NoZWQ6IHNjaF9jYWtlOiBmaXh1cCBjYWtlX21xIHJhdGUgYWRqdXN0bWVudCBmb3IgZGlm ZnNlcnYgY29uZmlnIikNCj4+IFNpZ25lZC1vZmYtYnk6IEpvbmFzIEvDtnBwZWxlciA8ai5rb2Vw cGVsZXJAdHUtYmVybGluLmRlPg0KPj4gVGVzdGVkLWJ5OiBNaWtlIFBoYW0gPG1pa2VwaGFtNDMy MUBnbWFpbC5jb20+DQo+IA0KPiBEbyB5b3UgaGF2ZSBhbnkgcGVyZm9ybWFuY2UgbnVtYmVycyB0 byBzaG93IHRoZSBpbXBhY3Qgb2YgdGhpcz8NClllcywgdGhlIHRhYmxlIGJlbG93IHNob3dzIHJl c3VsdHMgZnJvbSBhIHRlc3Qgc2V0dXAgdXNpbmcgdm5nIHdpdGgNCjIgbmV0d29yayBuYW1lc3Bh Y2VzLCB3aXRoIGNha2UvY2FrZV9tcSBhdHRhY2hlZCBpbiBvbmUgb2YgdGhlbToNCg0KICAgICBu czEgLT4gY2FrZS9jYWtlX21xIC0+IG5zMg0KDQotIHZldGggZGV2aWNlcyBhcmUgY29uZmlndXJl ZCB3aXRoIDggcngvdHggcXVldWVzLg0KLSBjYWtlL2Nha2VfbXEgaXMgY29uZmlndXJlZCB3aXRo IGEgMiBHYml0IHJhdGUgbGltaXQuDQotIFJ1bm5pbmcgZmxlbnQncyBycnVsIGFuZCB0Y3BfbnVw IHRlc3RzIHdpdGggMzIgVENQIHVwc3RyZWFtczoNCg0KbGVnZW5kOiBxZGlzYyBtcSA9IGNha2Vf bXE7IG1vZGUgYmUgPSBiZXN0ZWZmb3J0LCBkczMgPSBkaWZmc2VydjMNCiAgICAgICAgIHRlc3Qg bnVwID0gdGNwX251cDsgYmFzZS9sb2FkID0gaWRsZS9sb2FkZWQgUlRUIChtcyk7IHRwdXQgPSBN Yml0L3MNCg0KKy0tLS0tLS0tLS0tLS0tLS0tLS0tLSstLS0tLS0tKy0tLS0tLSstLS0tLS0rLS0t LS0tLSstLS0tLS0tKy0tLS0tLS0tLSsNCnwga2VybmVsICAgICAgICAgICAgICB8IHFkaXNjIHwg bW9kZSB8IHRlc3QgfCAgYmFzZSB8ICBsb2FkIHwgICAgdHB1dCB8DQorLS0tLS0tLS0tLS0tLS0t LS0tLS0tKy0tLS0tLS0rLS0tLS0tKy0tLS0tLSstLS0tLS0tKy0tLS0tLS0rLS0tLS0tLS0tKw0K fCBuZXQtbmV4dCAgICAgICAgICAgIHwgY2FrZSAgfCBiZSAgIHwgcnJ1bCB8IDAuMDc1IHwgIDQu NzYgfCAxNDczLjY5IHwNCnwgbmV0LW5leHQgICAgICAgICAgICB8IGNha2UgIHwgYmUgICB8IG51 cCAgfCAwLjA3OCB8ICA2LjIzIHwgMTU1MC43OSB8DQp8IG5ldC1uZXh0ICAgICAgICAgICAgfCBj YWtlICB8IGRzMyAgfCBycnVsIHwgMC4wNjMgfCAgNS44MSB8IDE1MjYuNzUgfA0KfCBuZXQtbmV4 dCAgICAgICAgICAgIHwgY2FrZSAgfCBkczMgIHwgbnVwICB8IDAuMDQ2IHwgIDYuMDkgfCAxNzYx LjQ1IHwNCistLS0tLS0tLS0tLS0tLS0tLS0tLS0rLS0tLS0tLSstLS0tLS0rLS0tLS0tKy0tLS0t LS0rLS0tLS0tLSstLS0tLS0tLS0rDQp8IG5ldC1uZXh0ICAgICAgICAgICAgfCBtcSAgICB8IGJl ICAgfCBycnVsIHwgMC44MTAgfCAxMS43OCB8IDE0NjkuNjcgfA0KfCBuZXQtbmV4dCAgICAgICAg ICAgIHwgbXEgICAgfCBiZSAgIHwgbnVwICB8IDAuNjM3IHwgODUuNzEgfCAxMjQzLjE1IHwNCnwg bmV0LW5leHQgICAgICAgICAgICB8IG1xICAgIHwgZHMzICB8IHJydWwgfCAwLjM5NyB8IDE1LjI4 IHwgMTc3MC4wNiB8DQp8IG5ldC1uZXh0ICAgICAgICAgICAgfCBtcSAgICB8IGRzMyAgfCBudXAg IHwgMC4zNTEgfCAxNS45OCB8IDE3OTkuMzkgfA0KKy0tLS0tLS0tLS0tLS0tLS0tLS0tLSstLS0t LS0tKy0tLS0tLSstLS0tLS0rLS0tLS0tLSstLS0tLS0tKy0tLS0tLS0tLSsNCnwgdGhpcyBwYXRj aCAgICAgICAgICB8IG1xICAgIHwgYmUgICB8IHJydWwgfCAwLjA5MiB8ICAwLjU2IHwgMTg3My40 MCB8DQp8IHRoaXMgcGF0Y2ggICAgICAgICAgfCBtcSAgICB8IGJlICAgfCBudXAgIHwgMC4xMDkg fCAgMS44MiB8IDE4NjkuMTIgfA0KfCB0aGlzIHBhdGNoICAgICAgICAgIHwgbXEgICAgfCBkczMg IHwgcnJ1bCB8IDAuMDk3IHwgIDAuOTggfCAxODY2LjEwIHwNCnwgdGhpcyBwYXRjaCAgICAgICAg ICB8IG1xICAgIHwgZHMzICB8IG51cCAgfCAwLjEwMSB8ICAwLjUxIHwgMTg2MS43OSB8DQorLS0t LS0tLS0tLS0tLS0tLS0tLS0tKy0tLS0tLS0rLS0tLS0tKy0tLS0tLSstLS0tLS0tKy0tLS0tLS0r LS0tLS0tLS0tKw0KfCBiZWZvcmUgMTVjMjcxNWE1MjY0IHwgbXEgICAgfCBiZSAgIHwgcnJ1bCB8 IDAuMDczIHwgIDAuMzAgfCAxODk1LjQ1IHwNCnwgYmVmb3JlIDE1YzI3MTVhNTI2NCB8IG1xICAg IHwgYmUgICB8IG51cCAgfCAwLjA3NiB8ICAwLjQ5IHwgMTkwNS41NyB8DQp8IGJlZm9yZSAxNWMy NzE1YTUyNjQgfCBtcSAgICB8IGRzMyAgfCBycnVsIHwgMC4wNjkgfCAgMC4zMSB8IDE4OTYuNTkg fA0KfCBiZWZvcmUgMTVjMjcxNWE1MjY0IHwgbXEgICAgfCBkczMgIHwgbnVwICB8IDAuMDU4IHwg IDAuODYgfCAxODg0LjAxIHwNCistLS0tLS0tLS0tLS0tLS0tLS0tLS0rLS0tLS0tLSstLS0tLS0r LS0tLS0tKy0tLS0tLS0rLS0tLS0tLSstLS0tLS0tLS0rDQoNCk5vdCBvbmx5IGlzIHA5OSBsYXRl bmN5IGRyYXN0aWNhbGx5IHJlZHVjZWQgLS0gbmVhcmx5IG1hdGNoaW5nDQpwcmUtMTVjMjcxNWE1 MjY0IHJlc3VsdHMgLS0gYnV0IG9uIGN1cnJlbnQgdXBzdHJlYW0gY2FrZV9tcSwNCnRocm91Z2hw dXQgYWxzbyBpbmNyZWFzZXMgYXMgYSBjYWtlIG1vZGUgdXNlcyBtb3JlIHRpbnMuIFRoaXMgcG9p bnRzDQpkaXJlY3RseSB0byBjYWtlX2NsZWFyX3RpbigpIGR1cmluZyByZWNvbmZpZyBhcyB0aGUg Y2F1c2UsIHNpbmNlIGl0DQpjbGVhcnMgKG1heF90aW5zIC0gY3VyX3RpbnMpIHRpbnMgZWFjaCB0 aW1lLiBTbyB0aGUgZmV3ZXIgdGlucyB0aGUNCmN1cnJlbnQgbW9kZSB1c2VzLCB0aGUgbW9yZSBn ZXQgY2xlYXJlZCBvbiBldmVyeSByZWNvbmZpZy4NCg0KTWlrZSByYW4gYWxzbyBzb21lIHRlc3Qg b24gT3BlbldydCwgb24gYW4gSVBRODA3NEEgd2l0aCA0IHJ4L3R4DQpxdWV1ZXMsIGFuZCBzYXcg c2ltaWxhciB0cmVuZHMuIGNha2VfbXEgaXMgY29uZmlndXJlZCB3aXRoIGEgMi4yIEdiaXQNCnJh dGUgbGltaXQuDQoNClVuZm9ydHVuYXRlbHksIHdlIG9ubHkgaGF2ZSBkYXRhIGZvciAxMjggVENQ IHVwc3RyZWFtcyBvbiBuZXQtbmV4dCwNCmFuZCA2NCBUQ1AgdXBzdHJlYW1zIGZvciAndGhpcyBw YXRjaCcuDQoNCistLS0tLS0tLS0tLS0tLS0tLS0tLS0rLS0tLS0tLSstLS0tLS0rLS0tLS0tKy0t LS0tLS0tLSstLS0tLS0tLS0tKw0KfCBrZXJuZWwgICAgICAgICAgICAgIHwgcWRpc2MgfCBtb2Rl IHwgdGVzdCB8ICAgIGxvYWQgfCAgICAgdHB1dCB8DQorLS0tLS0tLS0tLS0tLS0tLS0tLS0tKy0t LS0tLS0rLS0tLS0tKy0tLS0tLSstLS0tLS0tLS0rLS0tLS0tLS0tLSsNCnwgbmV0LW5leHQgICAg ICAgICAgICB8IG1xICAgIHwgYmUgICB8IG51cCAgfCAgNDY4LjUwIHwgICAgNTAuOTAgfA0KfCBu ZXQtbmV4dCAgICAgICAgICAgIHwgbXEgICAgfCBkczMgIHwgbnVwICB8ICAzNTUuMjIgfCAgICA5 OC4yMSB8DQp8IG5ldC1uZXh0ICAgICAgICAgICAgfCBtcSAgICB8IGRzNCAgfCBudXAgIHwgIDI2 OC4yOCB8ICAgMjU1Ljg0IHwNCnwgbmV0LW5leHQgICAgICAgICAgICB8IG1xICAgIHwgZHM4ICB8 IG51cCAgfCAgICA3LjQ4IHwgIDIwMjMuNjYgfA0KKy0tLS0tLS0tLS0tLS0tLS0tLS0tLSstLS0t LS0tKy0tLS0tLSstLS0tLS0rLS0tLS0tLS0tKy0tLS0tLS0tLS0rDQp8IHRoaXMgcGF0Y2ggICAg ICAgICAgfCBtcSAgICB8IGJlICAgfCBudXAgIHwgICAgNC4yNCB8ICAgOTQ0LjM1IHwNCnwgdGhp cyBwYXRjaCAgICAgICAgICB8IG1xICAgIHwgZHMzICB8IG51cCAgfCAgICA0LjI3IHwgICA5Mzcu NzUgfA0KfCB0aGlzIHBhdGNoICAgICAgICAgIHwgbXEgICAgfCBkczQgIHwgbnVwICB8ICAgIDQu MjQgfCAgIDkzNi45NyB8DQp8IHRoaXMgcGF0Y2ggICAgICAgICAgfCBtcSAgICB8IGRzOCAgfCBu dXAgIHwgICAgNC4zMiB8ICAgOTI3Ljg5IHwNCistLS0tLS0tLS0tLS0tLS0tLS0tLS0rLS0tLS0t LSstLS0tLS0rLS0tLS0tKy0tLS0tLS0tLSstLS0tLS0tLS0tKw0KDQpUaGlzIGFnYWluIHNob3dz IHRoZSBzYW1lIHRyZW5kOiB0aHJvdWdocHV0IGluY3JlYXNlcyBhbmQgbGF0ZW5jeQ0KZHJvcHMg YXMgY2FrZV9tcSBpcyBjb25maWd1cmVkIHdpdGggbW9yZSB0aW5zLiBXZSdyZSBzdGlsbCBsb29r aW5nDQppbnRvIHdoeSBuZXQtbmV4dCtkczggcmVhY2hlcyBjbG9zZSB0byAyIEdiaXQvcywgd2hp bGUgdGhpcyBwYXRjaA0KdG9wcyBvdXQgYXJvdW5kIDkyOCBNYml0L3MuDQoNClRoYXQgc2FpZCwg dGhpcyBwYXRjaCBkb2Vzbid0IHNvbHZlIGV2ZXJ5IGlzc3VlIHlldCwgYnV0IGl0IGRvZXMNCnJl bW92ZSB0aGUgcmVncmVzc2lvbiBpbnRyb2R1Y2VkIGJ5IGNvbW1pdCAxNWMyNzE1YTUyNjQNCigi bmV0L3NjaGVkOiBzY2hfY2FrZTogZml4dXAgY2FrZV9tcSByYXRlIGFkanVzdG1lbnQgZm9yIGRp ZmZzZXJ2DQpjb25maWciKS4NCg0KV2UncmUgY29udGludWluZyB0byBsb29rIGludG8gZnVydGhl ciBpbXByb3ZlbWVudHMuIExldCB1cyBrbm93IGlmDQp5b3UnZCBsaWtlIHRvIHNlZSBhZGRpdGlv bmFsIHRlc3RzIDopDQoNCi0gSm9uYXMNCg0KPiANCj4gLVRva2UNCg0K