From mboxrd@z Thu Jan 1 00:00:00 1970 Authentication-Results: mail.toke.dk; dkim=pass header.d=toke.dk; arc=none (Message is not ARC signed); dmarc=pass (Used From Domain Record) header.from=toke.dk policy.dmarc=reject From: Toke =?utf-8?Q?H=C3=B8iland-J=C3=B8rgensen?= DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=toke.dk; s=20161023; t=1758806997; bh=A/h/juuCPsvd250S715gwteOI9pU724vXu2yT9Odr6s=; h=From:To:Cc:Subject:In-Reply-To:References:Date:From; b=jFHwPNYrPGOppsG8JtxNE16F/hYWoT/UDrsgYLPJKLCndrQPDiXdQ9ERpR70v70qH Etlg6hvAfyNk/NB2NMxVdlDr5aJEZCdpAjEwValo3ef8dNonMYFBMh7PG/OrSWFW8n Rhau2pz4QaSS9PUnP1jDlT1GOUpE/YHoh4aObXrVpEbgENoVL+RzBqHCHeErXCGhzW o+3Lk2DC5MsUIKLaSSqTBLI9UQrcGAxKdKKZqxPVZOZBscROkm+wWCFmhG8GRlth4A flu6eHMotG+69USiC5fVBrb4L+55jjlgi9MwcBXBFeQBC7qOO2LGgSJZ2tdXpy5xT4 K7PlLUXb08fhA== To: Donald Hunter Cc: Jamal Hadi Salim , Cong Wang , Jiri Pirko , "David S. Miller" , Eric Dumazet , Jakub Kicinski , Paolo Abeni , Simon Horman , Jonas =?utf-8?Q?K=C3=B6ppeler?= , cake@lists.bufferbloat.net, netdev@vger.kernel.org In-Reply-To: References: <20250924-mq-cake-sub-qdisc-v1-0-43a060d1112a@redhat.com> <20250924-mq-cake-sub-qdisc-v1-4-43a060d1112a@redhat.com> Date: Thu, 25 Sep 2025 15:29:55 +0200 X-Clacks-Overhead: GNU Terry Pratchett Message-ID: <87o6qypsmk.fsf@toke.dk> MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: quoted-printable X-MailFrom: toke@toke.dk X-Mailman-Rule-Hits: implicit-dest X-Mailman-Rule-Misses: dmarc-mitigation; no-senders; approved; loop; banned-address; emergency; member-moderation; nonmember-moderation; administrivia; max-recipients; max-size; news-moderation; no-subject; digests; suspicious-header Message-ID-Hash: AVW6ZP5FODNS2UAVAOW6TZPBDBYGWFDJ X-Message-ID-Hash: AVW6ZP5FODNS2UAVAOW6TZPBDBYGWFDJ X-Mailman-Approved-At: Thu, 25 Sep 2025 15:51:31 +0200 X-Mailman-Version: 3.3.10 Precedence: list Subject: [Cake] Re: [PATCH RFC net-next 4/4] net/sched: sch_cake: share shaper state across sub-instances of cake_mq List-Id: Cake - FQ_codel the next generation Archived-At: List-Archive: List-Help: List-Owner: List-Post: List-Subscribe: List-Unsubscribe: Donald Hunter writes: > Toke H=C3=B8iland-J=C3=B8rgensen writes: > >> From: Jonas K=C3=B6ppeler >> >> This commit adds shared shaper state across the cake instances beneath a >> cake_mq qdisc. It works by periodically tracking the number of active >> instances, and scaling the configured rate by the number of active >> queues. >> >> The scan is lockless and simply reads the qlen and the last_active state >> variable of each of the instances configured beneath the parent cake_mq >> instance. Locking is not required since the values are only updated by >> the owning instance, and eventual consistency is sufficient for the >> purpose of estimating the number of active queues. >> >> The interval for scanning the number of active queues is configurable >> and defaults to 200 us. We found this to be a good tradeoff between >> overhead and response time. For a detailed analysis of this aspect see >> the Netdevconf talk: >> >> https://netdevconf.info/0x19/docs/netdev-0x19-paper16-talk-paper.pdf >> >> Signed-off-by: Jonas K=C3=B6ppeler >> Signed-off-by: Toke H=C3=B8iland-J=C3=B8rgensen >> --- >> include/uapi/linux/pkt_sched.h | 2 ++ >> net/sched/sch_cake.c | 67 +++++++++++++++++++++++++++++++++++= +++++++ >> 2 files changed, 69 insertions(+) >> >> diff --git a/include/uapi/linux/pkt_sched.h b/include/uapi/linux/pkt_sch= ed.h >> index c2da76e78badebbdf7d5482cef1a3132aec99fe1..a4aa812bfbe86424c502de5b= b2e5b1429b440088 100644 >> --- a/include/uapi/linux/pkt_sched.h >> +++ b/include/uapi/linux/pkt_sched.h >> @@ -1014,6 +1014,7 @@ enum { >> TCA_CAKE_ACK_FILTER, >> TCA_CAKE_SPLIT_GSO, >> TCA_CAKE_FWMARK, >> + TCA_CAKE_SYNC_TIME, >> __TCA_CAKE_MAX >> }; >> #define TCA_CAKE_MAX (__TCA_CAKE_MAX - 1) >> @@ -1036,6 +1037,7 @@ enum { >> TCA_CAKE_STATS_DROP_NEXT_US, >> TCA_CAKE_STATS_P_DROP, >> TCA_CAKE_STATS_BLUE_TIMER_US, >> + TCA_CAKE_STATS_ACTIVE_QUEUES, >> __TCA_CAKE_STATS_MAX >> }; >> #define TCA_CAKE_STATS_MAX (__TCA_CAKE_STATS_MAX - 1) > > Hi Toke, > > Could you include this diff in the patch to keep the ynl spec up to > date? Ah yes, will do, thanks! :) -Toke