From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from mail-yb1-xb35.google.com (mail-yb1-xb35.google.com [IPv6:2607:f8b0:4864:20::b35]) (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 227A83CB38 for ; Wed, 24 Jan 2024 07:17:39 -0500 (EST) Received: by mail-yb1-xb35.google.com with SMTP id 3f1490d57ef6-dc236729a2bso4626156276.0 for ; Wed, 24 Jan 2024 04:17:39 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=mojatatu-com.20230601.gappssmtp.com; s=20230601; t=1706098658; x=1706703458; darn=lists.bufferbloat.net; h=content-transfer-encoding:cc:to:subject:message-id:date:from :in-reply-to:references:mime-version:from:to:cc:subject:date :message-id:reply-to; bh=N40ZEELDdKAG+PltYHXUqIJnRZg2htUPF9zZfWdekds=; b=WDDt5KpCIJrC1nHNQlMxOeRonvJbCySXGc7ald+XOe4gBCQDmBQnZqK6GAlHwXZ3YR r9II17hVYeRlxWWs7MnoWCOJXtoFAUc/ClugtrB4ZJaXZnInBCooRhjiPVLF7wpo3v7g YDyrHLDZs/RSC38d0UReSDKFFRMHtd2bFhOW8wXYkWs5Pq7nsWyg0pDIptqOosSRVEcy H7yGI2V7Ng2p7MAfrMC3XiTdL7T6AjmRdh2O8K9Ilonp1vn2fo2J2G1ZU0d92UnsS6Rl 1gOSqnu5Us5R0Wq5Qqcv1gmBpKfhsUWWZtTDDUHvp1hq2Z6HUV+3rcC/+PtvXDt7Sp0p KX6g== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1706098658; x=1706703458; h=content-transfer-encoding:cc:to:subject:message-id:date:from :in-reply-to:references:mime-version:x-gm-message-state:from:to:cc :subject:date:message-id:reply-to; bh=N40ZEELDdKAG+PltYHXUqIJnRZg2htUPF9zZfWdekds=; b=cyFDnVSHjJk4kco7RPC9IdIfIQOZ72KCALWWB9OEgp7kqUDiHL9jAl1fXOIuooZKTj +OyW+r8mrFxYK5J76k2/CyYCENthOm8azSIO0kn9ZBV1d8ZP+5lGxo6ZWK2hsm/PIcrF JhNdCQYbka6uVB/EQJSGMlNvks442x+87B5hE4ouaRAz/Ss9T/GxC/WiEr6GDs6jeMkV eEBabu6sZxaifgBacCsaUtIDaPYLv3perUjtIi9FPdzyv8amFIZJrq9bhUvDpGeLDIhx Pt45ev4bVpLU8Vt8o/mACXiGdn7VHk6wTqFwwWVA59YBp7UY6zISycS0TVCSaMJ45M1E am/g== X-Gm-Message-State: AOJu0Yw4Q+VNJLWhRh7cJ1qoOdqL49FhRAlgyIBtyTGhJR5ZqrDdblgy PqLapH+j0JxuWh0zxw0fiAK0Gaj+naelSubU6GfZMyMkWGkmPa4fEceX8WASYy1P6SqJQkuuTuA j9k2ZH6EafxKkPXaCNAiMapyzfeOj3NDC4Yk1 X-Google-Smtp-Source: AGHT+IFwzXVb4RY9kn5qPmYvPGQUlYLETaeLn/PuqSP06R4dtdLY3ViYyP66gP8R/osYf0FPE0DXk7hFGVI9sCWzIaI= X-Received: by 2002:a25:81d0:0:b0:dc2:8282:a590 with SMTP id n16-20020a2581d0000000b00dc28282a590mr448139ybm.125.1706098658502; Wed, 24 Jan 2024 04:17:38 -0800 (PST) MIME-Version: 1.0 References: <20240123135242.11430-1-mkoutny@suse.com> In-Reply-To: <20240123135242.11430-1-mkoutny@suse.com> From: Jamal Hadi Salim Date: Wed, 24 Jan 2024 07:17:27 -0500 Message-ID: To: =?UTF-8?Q?Michal_Koutn=C3=BD?= Cc: netdev@vger.kernel.org, linux-kernel@vger.kernel.org, bpf@vger.kernel.org, cake@lists.bufferbloat.net, "David S . Miller" , Eric Dumazet , Jakub Kicinski , Paolo Abeni , Cong Wang , Jiri Pirko , Alexei Starovoitov , Daniel Borkmann , Andrii Nakryiko , Martin KaFai Lau , Song Liu , Yonghong Song , John Fastabend , KP Singh , Stanislav Fomichev , Hao Luo , Jiri Olsa , =?UTF-8?B?VG9rZSBIw7hpbGFuZC1Kw7hyZ2Vuc2Vu?= , Vinicius Costa Gomes , Stephen Hemminger , Petr Pavlu , Michal Kubecek , Martin Wilck , Pedro Tammela Content-Type: text/plain; charset="UTF-8" Content-Transfer-Encoding: quoted-printable Subject: Re: [Cake] [PATCH v4 0/4] net/sched: Load modules via alias 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: Wed, 24 Jan 2024 12:17:39 -0000 Hi Michal, On Tue, Jan 23, 2024 at 8:52=E2=80=AFAM Michal Koutn=C3=BD wrote: > > These modules may be loaded lazily without user's awareness and > control. Add respective aliases to modules and request them under these > aliases so that modprobe's blacklisting mechanism (through aliases) > works for them. (The same pattern exists e.g. for filesystem > modules.) > > For example (before the change): > $ tc filter add dev lo parent 1: protocol ip prio 1 handle 10 tcindex .= .. > # cls_tcindex module is loaded despite a `blacklist cls_tcindex` entry > # in /etc/modprobe.d/*.conf > > After the change: > $ tc filter add dev lo parent 1: protocol ip prio 1 handle 10 tcindex .= .. > Unknown filter "tcindex", hence option "..." is unparsable > # explicit/acknowledged (privileged) action is needed > $ modprobe cls_tcindex > # blacklist entry won't apply to this direct modprobe, module is > # loaded with awareness > A small nit seeing Simon's comment which will have you respin. cls_tcindex is no longer in the kernel. Can you use another example? Also Stephen had some comments last time, not sure if you addressed those (nothing on the logs says you did and i didnt see him say anything). cheers, jamal > A considered alternative was invoking `modprobe -b` always from > request_module(), however, dismissed as too intrusive and slightly > confusing in favor of the precedented aliases (the commit 7f78e0351394 > ("fs: Limit sys_mount to only request filesystem modules."). > > User experience suffers in both alternatives. It's improvement is > orthogonal to blacklist honoring. > > Changes from v1 (https://lore.kernel.org/r/20231121175640.9981-1-mkoutny@= suse.com) > - Treat sch_ and act_ modules analogously to cls_ > > Changes from v2 (https://lore.kernel.org/r/20231206192752.18989-1-mkoutny= @suse.com) > - reorganized commits (one generated commit + manual pre-/post- work) > - used alias names more fitting the existing net- aliases > - more info in commit messages and cover letter > - rebased on current master > > Changes from v3 (https://lore.kernel.org/r/20240112180646.13232-1-mkoutny= @suse.com) > - rebase on netdev/net-next/main > - correct aliases in cls_* modules (wrong sed) > - replace repeated prefix strings with a macro > - patch also request_module call in qdisc_set_default() > > Michal Koutn=C3=BD (4): > net/sched: Add helper macros with module names > net/sched: Add module aliases for cls_,sch_,act_ modules > net/sched: Load modules via their alias > net/sched: Remove alias of sch_clsact > > include/net/act_api.h | 2 ++ > include/net/pkt_cls.h | 2 ++ > include/net/pkt_sched.h | 2 ++ > net/sched/act_api.c | 2 +- > net/sched/act_bpf.c | 1 + > net/sched/act_connmark.c | 1 + > net/sched/act_csum.c | 1 + > net/sched/act_ct.c | 1 + > net/sched/act_ctinfo.c | 1 + > net/sched/act_gact.c | 1 + > net/sched/act_gate.c | 1 + > net/sched/act_ife.c | 1 + > net/sched/act_mirred.c | 1 + > net/sched/act_mpls.c | 1 + > net/sched/act_nat.c | 1 + > net/sched/act_pedit.c | 1 + > net/sched/act_police.c | 1 + > net/sched/act_sample.c | 1 + > net/sched/act_simple.c | 1 + > net/sched/act_skbedit.c | 1 + > net/sched/act_skbmod.c | 1 + > net/sched/act_tunnel_key.c | 1 + > net/sched/act_vlan.c | 1 + > net/sched/cls_api.c | 2 +- > net/sched/cls_basic.c | 1 + > net/sched/cls_bpf.c | 1 + > net/sched/cls_cgroup.c | 1 + > net/sched/cls_flow.c | 1 + > net/sched/cls_flower.c | 1 + > net/sched/cls_fw.c | 1 + > net/sched/cls_matchall.c | 1 + > net/sched/cls_route.c | 1 + > net/sched/cls_u32.c | 1 + > net/sched/sch_api.c | 4 ++-- > net/sched/sch_cake.c | 1 + > net/sched/sch_cbs.c | 1 + > net/sched/sch_choke.c | 1 + > net/sched/sch_codel.c | 1 + > net/sched/sch_drr.c | 1 + > net/sched/sch_etf.c | 1 + > net/sched/sch_ets.c | 1 + > net/sched/sch_fq.c | 1 + > net/sched/sch_fq_codel.c | 1 + > net/sched/sch_gred.c | 1 + > net/sched/sch_hfsc.c | 1 + > net/sched/sch_hhf.c | 1 + > net/sched/sch_htb.c | 1 + > net/sched/sch_ingress.c | 3 ++- > net/sched/sch_mqprio.c | 1 + > net/sched/sch_multiq.c | 1 + > net/sched/sch_netem.c | 1 + > net/sched/sch_pie.c | 1 + > net/sched/sch_plug.c | 1 + > net/sched/sch_prio.c | 1 + > net/sched/sch_qfq.c | 1 + > net/sched/sch_red.c | 1 + > net/sched/sch_sfb.c | 1 + > net/sched/sch_sfq.c | 1 + > net/sched/sch_skbprio.c | 1 + > net/sched/sch_taprio.c | 1 + > net/sched/sch_tbf.c | 1 + > 61 files changed, 66 insertions(+), 5 deletions(-) > > > base-commit: 736b5545d39ca59d4332a60e56cc8a1a5e264a8e > -- > 2.43.0 >