What do you consider the best example so far of a kernel module's equivalent of "parse_mount_options" (handling a mix of options of different types) and show_options. On 7/27/07, Miklos Szeredi <miklos@xxxxxxxxxx> wrote: > [please consider pruning the CC list if discussing some aspect, which > doesn't concern all] > > I've done an audit of all filesystems with regards to showing mount > options in /proc/<pid>/mounts. Unfortunately most of them show none > or only a part of all accepted options (for details see list of > filesystems at the end of the mail). > > This is currently not a big problem, because mount(8) stores the given > options in /etc/mtab. However we want to get rid of mtab, and this > requires, that the option showing be fixed up. > > It would be easiest if this was done by the VFS instead of having to > deal with it in filesystems. However there are differences in how > filesytems handle options during mount and remount, and it would be > impossible to take this into account in all cases. > > If you are CC-ed, and responsible for one of these filesystems, please > take a moment to fully implement the ->show_options() method. In most > cases it should be an easy task. > > If for some reason you are unable to do this, please let me know and > I'll fix it up. > > Here are some guidelines for showing options. I'll also add these to > Documentation/filesystems/vfs.txt > > + If a filesystem accepts mount options, it must define show_options() > + to show all the currently active options. The rules are: > + > + - options MUST be shown which are not default or their values differ > + from the default > + > + - options MAY be shown which are enabled by default or have their > + default value > + > + Options used only internally between a mount helper and the kernel > + (such as file descriptors), or which only have an effect during the > + mounting (such as ones controlling the creation of a journal) are exempt > + from the above rules. > > Thanks, > Miklos > > ------- > legend: > > all - fs has options, but doesn't define ->show_options() > some - fs defines ->show_options(), but some options are not shown > noopt - fs does not have options > good - fs shows all options > patch - I have a patch > > > 9p some > adfs all (maintainer?) > affs all > afs all > autofs all > autofs4 some > befs all > bfs noopt > cifs some (odd parser) > coda noopt > configfs noopt > cramfs noopt > debugfs noopt > devpts patch > ecryptfs some > efs noopt > ext2 patch > ext3 patch > ext4 patch > fat some > freevxfs noopt > fuse patch > gfs2 good > hfs good > hfsplus good > hostfs patch > hpfs all > hppfs noopt > hugetlbfs all > isofs all (maintainer?) > jffs2 noopt > jfs some > minix noopt > msdos ->fat > ncpfs all (FS_BINARY_MOUNTDATA?) > nfs some > nfsd noopt > ntfs good (odd parser) > ocfs2 all > openpromfs noopt > proc noopt > qnx4 noopt > ramfs noopt > reiserfs all > romfs noopt > smbfs good (odd parser) (maintainer?) > sysfs noopt > sysv noopt > udf all > ufs all > vfat ->fat > xfs some (odd parser) > > mm/shmem.c patch > drivers/oprofile/oprofilefs.c noopt > drivers/infiniband/hw/ipath/ipath_fs.c noopt > drivers/misc/ibmasm/ibmasmfs.c noopt > drivers/usb/core (usbfs) noopt > drivers/usb/gadget (gadgetfs) noopt > drivers/isdn/capi/capifs.c noopt > kernel/cpuset.c noopt > fs/binfmt_misc.c noopt > net/sunrpc/rpc_pipe.c noopt > arch/powerpc/platforms/cell/spufs all > arch/s390/hypfs all > ipc/mqueue.c noopt > security (securityfs) noopt > security/selinux/selinuxfs.c noopt > > in -mm: > > reiser4 some (odd parser) > kernel/container.c good (odd parser) > -- Thanks, Steve - To unsubscribe from this list: send the line "unsubscribe linux-fsdevel" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html