On Tue, Aug 12, 2025 at 10:44:29AM +0200, Andreas Hindborg wrote: > Allow rust null block devices to be configured and instantiated via > `configfs`. > > Signed-off-by: Andreas Hindborg <a.hindborg@xxxxxxxxxx> Overall LGTM, but a few comments below: > diff --git a/drivers/block/rnull/configfs.rs b/drivers/block/rnull/configfs.rs > new file mode 100644 > index 000000000000..8d469c046a39 > --- /dev/null > +++ b/drivers/block/rnull/configfs.rs > @@ -0,0 +1,218 @@ > +// SPDX-License-Identifier: GPL-2.0 > + > +use super::{NullBlkDevice, THIS_MODULE}; > +use core::fmt::Write; > +use kernel::{ > + block::mq::gen_disk::{GenDisk, GenDiskBuilder}, > + c_str, > + configfs::{self, AttributeOperations}, > + configfs_attrs, new_mutex, It would be nice to add pub use configfs_attrs; to the configfs module so that you can import the macro from the configfs module instead of the root. > + try_pin_init!( DeviceConfig { > + data <- new_mutex!( DeviceConfigInner { Extra spaces in these macros. > + let power_op_str = core::str::from_utf8(page)?.trim(); > + > + let power_op = match power_op_str { > + "0" => Ok(false), > + "1" => Ok(true), > + _ => Err(EINVAL), > + }?; We probably want kstrtobool here instead of manually parsing the boolean. Alice