From: Matthew Wood <thepacketgeek@gmail.com>
To: Andreas Hindborg <a.hindborg@kernel.org>,
Breno Leitao <leitao@debian.org>
Cc: Andrew Lunn <andrew+netdev@lunn.ch>,
"David S. Miller" <davem@davemloft.net>,
Eric Dumazet <edumazet@google.com>,
Jakub Kicinski <kuba@kernel.org>,
Paolo Abeni <pabeni@redhat.com>,
linux-kernel@vger.kernel.org, hch@infradead.org,
jlbec@evilplan.org, linux-fsdevel@vger.kernel.org,
netdev@vger.kernel.org, gustavold@gmail.com,
asantostc@gmail.com, calvin@wbinvd.org, kernel-team@meta.com
Subject: Re: [PATCH RFC 0/2] configfs: enable kernel-space item registration
Date: Thu, 5 Feb 2026 09:46:52 -0800 [thread overview]
Message-ID: <aYTWbElo_U_neJZi@deathstar> (raw)
In-Reply-To: <875xakwwvz.fsf@t14s.mail-host-address-is-not-set>
Hi Breno and Andreas,
I'm in favor of this RFC as I think the current flow of needing to
create the cmdline0 dir in the netconsole configfs (when DYNAMIC config
is enabled) prior to modifying the values is not ideal.
I think there are good points shared about sysfs vs. configfs being used
for the cmdline target modification and wanted to add my thoughts.
On Fri, Dec 05, 2025 at 08:29:04PM +0100, Andreas Hindborg wrote:
> "Breno Leitao" <leitao@debian.org> writes:
>
> > Hello Andreas,
> >
> > On Fri, Dec 05, 2025 at 06:35:12PM +0100, Andreas Hindborg wrote:
> >> "Breno Leitao" <leitao@debian.org> writes:
> >>
> >> > This series introduces a new kernel-space item registration API for configfs
> >> > to enable subsystems to programmatically create configfs items whose lifecycle
> >> > is controlled by the kernel rather than userspace.
> >> >
> >> > Currently, configfs items can only be created via userspace mkdir operations,
> >> > which limits their utility for kernel-driven configuration scenarios such as
> >> > boot parameters or hardware auto-detection.
> >>
> >> I thought sysfs would handle this kind of scenarios?
> >
> > sysfs has gaps as well, to manage user-create items.
> >
> > Netconsole has two types of "targets". Those created dynamically
> > (CONFIG_NETCONSOLE_DYNAMIC), where user can create and remove as many
> > targets as it needs, and netconsole would send to it. This fits very
> > well in configfs.
> >
> > mkdir /sys/kernel/config/netconsole/mytarget
> > .. manage the target using configfs items/files
> > rmdir /sys/kernel/config/netconsole/mytarget
> >
> > This is a perfect fit for configfs, and I don't see how it would work
> > with sysfs.
>
> Right, these go in configfs, we are on the same page about that.
>
> >
> > On top of that, there are netconsole targets that are coming from
> > cmdline (basically to cover while userspace is not initialized). These
> > are coming from cmdline and its life-cycle is managed by the kernel.
> > I.e, the kernel knows about them, and wants to expose it to the user
> > (which can even disable them later). This is the problem I this patch
> > addresses (exposing them easily).
>
> I wonder if these entries could be exposed via sysfs? You could create
> the same directory structure as you have in configfs for the user
> created devices, so the only thing user space has to do is to point at a
> different directory.
>
Although technically feasible, this approach leads to an inconsistent
and confusing management of the netconsole targets. A configfs path for
user-space created targets and a sysfs path for the cmdline initiated
target that can also be modified from userspace (e.g. to update
remote_ip or userdata fields).
I think Breno's approach sets up for the most intuitive user experience.
The cmdline config for netconsole is also user-provided, so it seems
like it should behave as a pre-populated configfs target that happens to
pass from cmdline through netconsole module init to the current configfs
interface. The initial values are not determined by the kernel itself.
>
> Best regards,
> Andreas Hindborg
>
>
>
next prev parent reply other threads:[~2026-02-05 17:46 UTC|newest]
Thread overview: 16+ messages / expand[flat|nested] mbox.gz Atom feed top
[not found] <fdieWSRrkaRJDRuUJYwp6EBe1NodHTz3PpVgkS662Ja0JcX3vfDbNo_bs1BM7zIkVsHmxHjeDi6jmq4sPKOCIw==@protonmail.internalid>
2025-12-02 15:29 ` [PATCH RFC 0/2] configfs: enable kernel-space item registration Breno Leitao
2025-12-02 15:29 ` [PATCH RFC 1/2] configfs: add kernel-space item registration API Breno Leitao
2025-12-03 19:44 ` Joel Becker
2025-12-05 16:39 ` Breno Leitao
2025-12-02 15:29 ` [PATCH RFC 2/2] netconsole: Plug to dynamic configfs item Breno Leitao
2025-12-05 17:35 ` [PATCH RFC 0/2] configfs: enable kernel-space item registration Andreas Hindborg
2025-12-05 18:03 ` Breno Leitao
2025-12-05 19:29 ` Andreas Hindborg
2026-02-05 17:46 ` Matthew Wood [this message]
2026-02-09 10:58 ` Andreas Hindborg
2026-02-09 13:56 ` Breno Leitao
2026-02-10 1:00 ` Joel Becker
2026-02-11 7:53 ` Andreas Hindborg
2026-02-11 9:29 ` Breno Leitao
2026-03-20 11:29 ` Andreas Hindborg
2026-03-20 12:39 ` Breno Leitao
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=aYTWbElo_U_neJZi@deathstar \
--to=thepacketgeek@gmail.com \
--cc=a.hindborg@kernel.org \
--cc=andrew+netdev@lunn.ch \
--cc=asantostc@gmail.com \
--cc=calvin@wbinvd.org \
--cc=davem@davemloft.net \
--cc=edumazet@google.com \
--cc=gustavold@gmail.com \
--cc=hch@infradead.org \
--cc=jlbec@evilplan.org \
--cc=kernel-team@meta.com \
--cc=kuba@kernel.org \
--cc=leitao@debian.org \
--cc=linux-fsdevel@vger.kernel.org \
--cc=linux-kernel@vger.kernel.org \
--cc=netdev@vger.kernel.org \
--cc=pabeni@redhat.com \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox