diff options
author | Nathan Scott <nathans@sgi.com> | 2005-09-02 02:42:26 -0400 |
---|---|---|
committer | Nathan Scott <nathans@sgi.com> | 2005-09-02 02:42:26 -0400 |
commit | e69a333b5e0c8c6b687b07665a3cb5545657d2aa (patch) | |
tree | fbdf8b56d23ce011ef3a8bb1481ca9a24e1cedb3 /fs/xfs/xfs_vfsops.c | |
parent | 7e9c63961558092d584936a874cf3fee80002eb6 (diff) |
[XFS] Add in grpid/nogrpid mount option parsing, actual code was always
there..
SGI-PV: 939444
SGI-Modid: xfs-linux:xfs-kern:23162a
Signed-off-by: Nathan Scott <nathans@sgi.com>
Diffstat (limited to 'fs/xfs/xfs_vfsops.c')
-rw-r--r-- | fs/xfs/xfs_vfsops.c | 16 |
1 files changed, 15 insertions, 1 deletions
diff --git a/fs/xfs/xfs_vfsops.c b/fs/xfs/xfs_vfsops.c index b8ce6cad2b71..d4b9545c2b5c 100644 --- a/fs/xfs/xfs_vfsops.c +++ b/fs/xfs/xfs_vfsops.c | |||
@@ -1621,6 +1621,10 @@ xfs_vget( | |||
1621 | #define MNTOPT_SWIDTH "swidth" /* data volume stripe width */ | 1621 | #define MNTOPT_SWIDTH "swidth" /* data volume stripe width */ |
1622 | #define MNTOPT_NOUUID "nouuid" /* ignore filesystem UUID */ | 1622 | #define MNTOPT_NOUUID "nouuid" /* ignore filesystem UUID */ |
1623 | #define MNTOPT_MTPT "mtpt" /* filesystem mount point */ | 1623 | #define MNTOPT_MTPT "mtpt" /* filesystem mount point */ |
1624 | #define MNTOPT_GRPID "grpid" /* group-ID from parent directory */ | ||
1625 | #define MNTOPT_NOGRPID "nogrpid" /* group-ID from current process */ | ||
1626 | #define MNTOPT_BSDGROUPS "bsdgroups" /* group-ID from parent directory */ | ||
1627 | #define MNTOPT_SYSVGROUPS "sysvgroups" /* group-ID from current process */ | ||
1624 | #define MNTOPT_ALLOCSIZE "allocsize" /* preferred allocation size */ | 1628 | #define MNTOPT_ALLOCSIZE "allocsize" /* preferred allocation size */ |
1625 | #define MNTOPT_IHASHSIZE "ihashsize" /* size of inode hash table */ | 1629 | #define MNTOPT_IHASHSIZE "ihashsize" /* size of inode hash table */ |
1626 | #define MNTOPT_NORECOVERY "norecovery" /* don't run XFS recovery */ | 1630 | #define MNTOPT_NORECOVERY "norecovery" /* don't run XFS recovery */ |
@@ -1741,6 +1745,12 @@ xfs_parseargs( | |||
1741 | } | 1745 | } |
1742 | args->flags |= XFSMNT_IHASHSIZE; | 1746 | args->flags |= XFSMNT_IHASHSIZE; |
1743 | args->ihashsize = simple_strtoul(value, &eov, 10); | 1747 | args->ihashsize = simple_strtoul(value, &eov, 10); |
1748 | } else if (!strcmp(this_char, MNTOPT_GRPID) || | ||
1749 | !strcmp(this_char, MNTOPT_BSDGROUPS)) { | ||
1750 | vfsp->vfs_flag |= VFS_GRPID; | ||
1751 | } else if (!strcmp(this_char, MNTOPT_NOGRPID) || | ||
1752 | !strcmp(this_char, MNTOPT_SYSVGROUPS)) { | ||
1753 | vfsp->vfs_flag &= ~VFS_GRPID; | ||
1744 | } else if (!strcmp(this_char, MNTOPT_WSYNC)) { | 1754 | } else if (!strcmp(this_char, MNTOPT_WSYNC)) { |
1745 | args->flags |= XFSMNT_WSYNC; | 1755 | args->flags |= XFSMNT_WSYNC; |
1746 | } else if (!strcmp(this_char, MNTOPT_OSYNCISOSYNC)) { | 1756 | } else if (!strcmp(this_char, MNTOPT_OSYNCISOSYNC)) { |
@@ -1862,6 +1872,7 @@ xfs_showargs( | |||
1862 | }; | 1872 | }; |
1863 | struct proc_xfs_info *xfs_infop; | 1873 | struct proc_xfs_info *xfs_infop; |
1864 | struct xfs_mount *mp = XFS_BHVTOM(bhv); | 1874 | struct xfs_mount *mp = XFS_BHVTOM(bhv); |
1875 | struct vfs *vfsp = XFS_MTOVFS(mp); | ||
1865 | 1876 | ||
1866 | for (xfs_infop = xfs_info; xfs_infop->flag; xfs_infop++) { | 1877 | for (xfs_infop = xfs_info; xfs_infop->flag; xfs_infop++) { |
1867 | if (mp->m_flags & xfs_infop->flag) | 1878 | if (mp->m_flags & xfs_infop->flag) |
@@ -1898,7 +1909,10 @@ xfs_showargs( | |||
1898 | 1909 | ||
1899 | if (!(mp->m_flags & XFS_MOUNT_32BITINOOPT)) | 1910 | if (!(mp->m_flags & XFS_MOUNT_32BITINOOPT)) |
1900 | seq_printf(m, "," MNTOPT_64BITINODE); | 1911 | seq_printf(m, "," MNTOPT_64BITINODE); |
1901 | 1912 | ||
1913 | if (vfsp->vfs_flag & VFS_GRPID) | ||
1914 | seq_printf(m, "," MNTOPT_GRPID); | ||
1915 | |||
1902 | return 0; | 1916 | return 0; |
1903 | } | 1917 | } |
1904 | 1918 | ||