I was reading the source for ext2fs
where the filesystem is registered with the FS_REQUIRES_DEV flag in fs/ext2/super.c. Both fs.h and the kernel documentation don't say anything else about this flag.
I also tried to look up how the VFS uses of this flag but no other uses show up apart what appears to be printing a list of filesystems (in fs/filesystem.c).
What does this flag represent?
The flag means that every instance of given filesystem uses underlying block device, where filesystem content is stored.
There are filesystems, which do not use block device. Among them "in-memory" filesystems, like sysfs
, debugfs
. Also, client part of network filesystems (e.g., nfs
) doesn't need block device.