linux-kernelfilesystemsext2

What does the FS_REQUIRES_DEV flag do in Linux filesystems?


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?


Solution

  • 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.