[PATCH 00/10] fs: Use device special nodes for devfs
Sascha Hauer
s.hauer at pengutronix.de
Thu Nov 27 01:19:22 PST 2025
Until now we have a devfs which is a filesystem of its own. This
comes with a few limitations:
- we cannot create directories under /dev/
- Links are implemented in the devfs filesystem. They do not show
up as regular links
This series overcomes these limitations by implementing device special
nodes. These nodes are limited to ramfs, so we cannot mount arbitrary
filesystems and use the device special files found on them. Nevertheless
we can create and use device special files on ramfs which is enough
to drop the devfs filesystem implementation and just use ramfs on /dev/.
This will in future allow us to create /dev/disk/by-* structures under
/dev/.
Signed-off-by: Sascha Hauer <s.hauer at pengutronix.de>
---
Sascha Hauer (10):
fs: implement mknod
commands: add mknod command
fs: ramfs: add device file support
cdev: add cdev_size() helper
fs: fix st_size for device files
fs: retire devfs as filesystem
fs: include cdevname in struct stat
fs: stat_print: get cdevname from stat
fs: replace cdev links with aliases
ls: use ~0 for FILE_SIZE_STREAM
commands/Kconfig | 4 +
commands/Makefile | 1 +
commands/devinfo.c | 7 +-
commands/ls.c | 8 +-
commands/mknod.c | 43 +++++++++++
common/partitions.c | 2 +-
common/startup.c | 2 +-
drivers/block/dm/dm-core.c | 1 -
fs/devfs-core.c | 179 ++++++++++++++++++++++++--------------------
fs/devfs.c | 180 +++------------------------------------------
fs/fs.c | 75 +++++++++++++------
fs/ramfs.c | 18 +++++
include/block.h | 2 -
include/driver.h | 10 +--
include/fcntl.h | 6 ++
include/linux/fs.h | 13 ++++
include/linux/stat.h | 1 +
17 files changed, 266 insertions(+), 286 deletions(-)
---
base-commit: f018a6e4606ef31c6975af6b960aa7824f79df73
change-id: 20251127-devfs-c138cff5482a
Best regards,
--
Sascha Hauer <s.hauer at pengutronix.de>
More information about the barebox
mailing list