Re: [PATCH v10 5/7] samples: rust: Add debugfs sample driver
From: Danilo Krummrich
Date: Tue Aug 19 2025 - 20:34:31 EST
On Wed Aug 20, 2025 at 12:53 AM CEST, Matthew Maurer wrote:
> Adds a new sample driver that demonstrates the debugfs APIs.
>
> The driver creates a directory in debugfs and populates it with a few
> files:
> - A read-only file that displays a fwnode property.
> - A read-write file that exposes an atomic counter.
> - A read-write file that exposes a custom struct.
>
> This sample serves as a basic example of how to use the `debugfs::Dir`
> and `debugfs::File` APIs to create and manage debugfs entries.
>
> Signed-off-by: Matthew Maurer <mmaurer@xxxxxxxxxx>
This is a great example, thanks! I really like how the API turned out.
When it comes to the newly added Scope API - and I assume this does not come at
a surprise - I have some concerns.
But first, thanks a lot for posting the socinfo driver in both variants, with
and without the Scope API.
I had a brief look at both of those and I can see why you want this.
With the Scope thing you can indeed write things a bit more compressed (I think
in the patches the differences looks quite a bit bigger than it actually is,
because the scope-based one uses quite some code from the file-based one).
I think the downsides are mainly:
- The degree of complexity added for a rather specific use-case, that is also
perfectly representable with the file-based API.
- It makes it convinient to expose multiple fields grouped under the same lock
as separate files, which design wise we shouln't encourage for the reasons
we discussed in v8.
I think for the sake of getting this series merged, which I would really love to
see, I think we should focus on the file-based API first. Once we got this
landed I think we can still revisit the Scope idea and have some more discussion
about it.
I will have a more detailed look tomorrow (at least for the patches 1-5).
Thanks again for working on this!
- Danilo