xfs: remove deprecated sysctl options
authorPavel Reichl <preichl@redhat.com>
Fri, 25 Sep 2020 18:11:37 +0000 (11:11 -0700)
committerDarrick J. Wong <darrick.wong@oracle.com>
Fri, 25 Sep 2020 18:34:08 +0000 (11:34 -0700)
These optionr were for Irix compatibility, probably for clustered XFS
clients in a heterogenous cluster which contained both Irix & Linux
machines, so that behavior would be consistent. That doesn't exist anymore
and it's no longer needed.

Signed-off-by: Pavel Reichl <preichl@redhat.com>
Reviewed-by: Darrick J. Wong <darrick.wong@oracle.com>
[darrick: actually state when the sysctls go away]
Signed-off-by: Darrick J. Wong <darrick.wong@oracle.com>
Documentation/admin-guide/xfs.rst
fs/xfs/xfs_sysctl.c

index 9ef81be..86de8a1 100644 (file)
@@ -356,7 +356,12 @@ The following sysctls are available for the XFS filesystem:
 Deprecated Sysctls
 ==================
 
-None at present.
+===========================     ================
+  Name                         Removal Schedule
+===========================     ================
+fs.xfs.irix_sgid_inherit        September 2025
+fs.xfs.irix_symlink_mode        September 2025
+===========================     ================
 
 
 Removed Sysctls
index 021ef96..fac9de7 100644 (file)
@@ -50,13 +50,45 @@ xfs_panic_mask_proc_handler(
 }
 #endif /* CONFIG_PROC_FS */
 
+STATIC int
+xfs_deprecate_irix_sgid_inherit_proc_handler(
+       struct ctl_table        *ctl,
+       int                     write,
+       void                    *buffer,
+       size_t                  *lenp,
+       loff_t                  *ppos)
+{
+       if (write) {
+               printk_once(KERN_WARNING
+                               "XFS: " "%s sysctl option is deprecated.\n",
+                               ctl->procname);
+       }
+       return proc_dointvec_minmax(ctl, write, buffer, lenp, ppos);
+}
+
+STATIC int
+xfs_deprecate_irix_symlink_mode_proc_handler(
+       struct ctl_table        *ctl,
+       int                     write,
+       void                    *buffer,
+       size_t                  *lenp,
+       loff_t                  *ppos)
+{
+       if (write) {
+               printk_once(KERN_WARNING
+                               "XFS: " "%s sysctl option is deprecated.\n",
+                               ctl->procname);
+       }
+       return proc_dointvec_minmax(ctl, write, buffer, lenp, ppos);
+}
+
 static struct ctl_table xfs_table[] = {
        {
                .procname       = "irix_sgid_inherit",
                .data           = &xfs_params.sgid_inherit.val,
                .maxlen         = sizeof(int),
                .mode           = 0644,
-               .proc_handler   = proc_dointvec_minmax,
+               .proc_handler   = xfs_deprecate_irix_sgid_inherit_proc_handler,
                .extra1         = &xfs_params.sgid_inherit.min,
                .extra2         = &xfs_params.sgid_inherit.max
        },
@@ -65,7 +97,7 @@ static struct ctl_table xfs_table[] = {
                .data           = &xfs_params.symlink_mode.val,
                .maxlen         = sizeof(int),
                .mode           = 0644,
-               .proc_handler   = proc_dointvec_minmax,
+               .proc_handler   = xfs_deprecate_irix_symlink_mode_proc_handler,
                .extra1         = &xfs_params.symlink_mode.min,
                .extra2         = &xfs_params.symlink_mode.max
        },