MAINTAINERS | 2 + fs/configfs/dir.c | 4 +- fs/configfs/item.c | 2 +- include/linux/configfs.h | 8 +- rust/bindings/bindings_helper.h | 1 + rust/helpers/mutex.c | 5 + rust/kernel/configfs.rs | 1049 +++++++++++++++++++++++++++++++++++++++ rust/kernel/lib.rs | 2 + samples/rust/Kconfig | 11 + samples/rust/Makefile | 1 + samples/rust/rust_configfs.rs | 192 +++++++ 11 files changed, 1272 insertions(+), 5 deletions(-) create mode 100644 rust/kernel/configfs.rs create mode 100644 samples/rust/rust_configfs.rs
Hi Linus,
This is my first pull request after picking up configfs [1], and my
first pull request to you. I hope I got everything right!
Summary
=======
This pull request contains configfs changes for v6.16:
- Allow creation of rw files with custom permissions. This allows
drivers to better protect secrets written through configfs.
- Fix a bug where an error condition did not cause an early return
while populating attributes.
- Report ENOMEM rather than EFAULT when kvasprintf() fails in
config_item_set_name().
- Add a Rust API for configfs. This allows Rust drivers to use configfs
through a memory safe interface.
Merge conflicts with other trees
================================
This contains a merge conflict with drm-nova:
diff --cc samples/rust/Makefile
index b3c9178d654a,6a466afd2a21..000000000000
--- a/samples/rust/Makefile
+++ b/samples/rust/Makefile
@@@ -8,7 -8,7 +8,8 @@@ obj-$(CONFIG_SAMPLE_RUST_DMA) += rust
obj-$(CONFIG_SAMPLE_RUST_DRIVER_PCI) += rust_driver_pci.o
obj-$(CONFIG_SAMPLE_RUST_DRIVER_PLATFORM) += rust_driver_platform.o
obj-$(CONFIG_SAMPLE_RUST_DRIVER_FAUX) += rust_driver_faux.o
+obj-$(CONFIG_SAMPLE_RUST_CONFIGFS) += rust_configfs.o
+ obj-$(CONFIG_SAMPLE_RUST_DRIVER_AUXILIARY) += rust_driver_auxiliary.o
---
With cpufreq-arm:
diff --cc rust/bindings/bindings_helper.h
index 1a532b83a9af,7c1d78f68076..000000000000
--- a/rust/bindings/bindings_helper.h
+++ b/rust/bindings/bindings_helper.h
@@@ -10,7 -10,9 +10,10 @@@
#include <linux/blk-mq.h>
#include <linux/blk_types.h>
#include <linux/blkdev.h>
+ #include <linux/clk.h>
+#include <linux/configfs.h>
+ #include <linux/cpu.h>
+ #include <linux/cpufreq.h>
#include <linux/cpumask.h>
#include <linux/cred.h>
#include <linux/device/faux.h>
diff --cc rust/kernel/lib.rs
index 354eb1605194,871fcdc09b35..000000000000
--- a/rust/kernel/lib.rs
+++ b/rust/kernel/lib.rs
@@@ -42,8 -42,12 +42,14 @@@ pub mod alloc
pub mod block;
#[doc(hidden)]
pub mod build_assert;
+ #[cfg(CONFIG_COMMON_CLK)]
+ pub mod clk;
+#[cfg(CONFIG_CONFIGFS_FS)]
+pub mod configfs;
+ pub mod cpu;
+ #[cfg(CONFIG_CPU_FREQ)]
+ pub mod cpufreq;
+ pub mod cpumask;
pub mod cred;
pub mod device;
pub mod device_id;
Pull Request
============
The following changes since commit 8ffd015db85fea3e15a77027fda6c02ced4d2444:
Linux 6.15-rc2 (2025-04-13 11:54:49 -0700)
are available in the Git repository at:
https://git.kernel.org/pub/scm/linux/kernel/git/a.hindborg/linux.git tags/configfs-for-v6.16
for you to fetch changes up to c6b1908224593db76f77b904894cd51933559ae9:
MAINTAINERS: add configfs Rust abstractions (2025-05-12 11:05:07 +0200)
Best regards,
Andreas Hindborg
----------------------------------------------------------------
configfs-for-v6.16
----------------------------------------------------------------
Andreas Hindborg (3):
rust: configfs: introduce rust support for configfs
rust: configfs: add a sample demonstrating configfs usage
MAINTAINERS: add configfs Rust abstractions
Richard Weinberger (1):
configfs: Add CONFIGFS_ATTR_PERM helper
Zijun Hu (3):
configfs: Delete semicolon from macro type_print() definition
configfs: Do not override creating attribute file failure in populate_attrs()
configfs: Correct error value returned by API config_item_set_name()
MAINTAINERS | 2 +
fs/configfs/dir.c | 4 +-
fs/configfs/item.c | 2 +-
include/linux/configfs.h | 8 +-
rust/bindings/bindings_helper.h | 1 +
rust/helpers/mutex.c | 5 +
rust/kernel/configfs.rs | 1049 +++++++++++++++++++++++++++++++++++++++
rust/kernel/lib.rs | 2 +
samples/rust/Kconfig | 11 +
samples/rust/Makefile | 1 +
samples/rust/rust_configfs.rs | 192 +++++++
11 files changed, 1272 insertions(+), 5 deletions(-)
create mode 100644 rust/kernel/configfs.rs
create mode 100644 samples/rust/rust_configfs.rs
---
[1] https://lore.kernel.org/all/20250326-configfs-maintainer-v1-1-b175189fa27b@kernel.org
The pull request you sent on Fri, 16 May 2025 09:51:40 +0200: > https://git.kernel.org/pub/scm/linux/kernel/git/a.hindborg/linux.git tags/configfs-for-v6.16 has been merged into torvalds/linux.git: https://git.kernel.org/torvalds/c/a56d3133bd875d90ef3237f24e37b75b6d0326a9 Thank you! -- Deet-doot-dot, I am a bot. https://korg.docs.kernel.org/prtracker.html
On Fri, 16 May 2025 at 00:51, Andreas Hindborg <a.hindborg@kernel.org> wrote:
>
> This is my first pull request after picking up configfs [1], and my
> first pull request to you. I hope I got everything right!
From a quick look everything looks fine. Proper signed tag that
verifies ok, and the pull request looks good.
I've obviously not actually merged it, but it's in my queue for when
the merge window opens.
Thanks,
Linus
© 2016 - 2025 Red Hat, Inc.