]> git.proxmox.com Git - mirror_ubuntu-bionic-kernel.git/commitdiff
xfs: deprecate barrier/nobarrier mount option
authorDave Chinner <dchinner@redhat.com>
Fri, 9 Dec 2016 05:49:54 +0000 (16:49 +1100)
committerDave Chinner <david@fromorbit.com>
Fri, 9 Dec 2016 05:49:54 +0000 (16:49 +1100)
We always perform integrity operations now, so these mount options
don't do anything. Deprecate them and mark them for removal in
in a year.

Signed-Off-By: Dave Chinner <dchinner@redhat.com>
Reviewed-by: Christoph Hellwig <hch@lst.de>
Signed-off-by: Dave Chinner <david@fromorbit.com>
Documentation/filesystems/xfs.txt
fs/xfs/xfs_super.c

index c2d44e6e117bc7e0f5014f2c734480a653fa0ada..3b9b5c149f322cfd80bc39fa479e884bd0f99252 100644 (file)
@@ -51,13 +51,6 @@ default behaviour.
        CRC enabled filesystems always use the attr2 format, and so
        will reject the noattr2 mount option if it is set.
 
-  barrier (*)
-  nobarrier
-       Enables/disables the use of block layer write barriers for
-       writes into the journal and for data integrity operations.
-       This allows for drive level write caching to be enabled, for
-       devices that support write barriers.
-
   discard
   nodiscard (*)
        Enable/disable the issuing of commands to let the block
@@ -228,7 +221,10 @@ default behaviour.
 Deprecated Mount Options
 ========================
 
-None at present.
+  Name                         Removal Schedule
+  ----                         ----------------
+  barrier                      no earlier than v4.15
+  nobarrier                    no earlier than v4.15
 
 
 Removed Mount Options
index 563d1d146b8c3be883267e9bc75bdce280989dc6..eecbaac08ebaab50f7a5a139e0ae646a7c086d4d 100644 (file)
@@ -104,9 +104,6 @@ static const match_table_t tokens = {
        {Opt_sysvgroups,"sysvgroups"},  /* group-ID from current process */
        {Opt_allocsize, "allocsize=%s"},/* preferred allocation size */
        {Opt_norecovery,"norecovery"},  /* don't run XFS recovery */
-       {Opt_barrier,   "barrier"},     /* use writer barriers for log write and
-                                        * unwritten extent conversion */
-       {Opt_nobarrier, "nobarrier"},   /* .. disable */
        {Opt_inode64,   "inode64"},     /* inodes can be allocated anywhere */
        {Opt_inode32,   "inode32"},     /* inode allocation limited to
                                         * XFS_MAXINUMBER_32 */
@@ -134,6 +131,12 @@ static const match_table_t tokens = {
        {Opt_nodiscard, "nodiscard"},   /* Do not discard unused blocks */
 
        {Opt_dax,       "dax"},         /* Enable direct access to bdev pages */
+
+       /* Deprecated mount options scheduled for removal */
+       {Opt_barrier,   "barrier"},     /* use writer barriers for log write and
+                                        * unwritten extent conversion */
+       {Opt_nobarrier, "nobarrier"},   /* .. disable */
+
        {Opt_err,       NULL},
 };
 
@@ -301,12 +304,6 @@ xfs_parseargs(
                case Opt_nouuid:
                        mp->m_flags |= XFS_MOUNT_NOUUID;
                        break;
-               case Opt_barrier:
-                       mp->m_flags |= XFS_MOUNT_BARRIER;
-                       break;
-               case Opt_nobarrier:
-                       mp->m_flags &= ~XFS_MOUNT_BARRIER;
-                       break;
                case Opt_ikeep:
                        mp->m_flags |= XFS_MOUNT_IKEEP;
                        break;
@@ -374,6 +371,14 @@ xfs_parseargs(
                        mp->m_flags |= XFS_MOUNT_DAX;
                        break;
 #endif
+               case Opt_barrier:
+                       xfs_warn(mp, "%s option is deprecated, ignoring.", p);
+                       mp->m_flags |= XFS_MOUNT_BARRIER;
+                       break;
+               case Opt_nobarrier:
+                       xfs_warn(mp, "%s option is deprecated, ignoring.", p);
+                       mp->m_flags &= ~XFS_MOUNT_BARRIER;
+                       break;
                default:
                        xfs_warn(mp, "unknown mount option [%s].", p);
                        return -EINVAL;
@@ -1238,9 +1243,11 @@ xfs_fs_remount(
                token = match_token(p, tokens, args);
                switch (token) {
                case Opt_barrier:
+                       xfs_warn(mp, "%s option is deprecated, ignoring.", p);
                        mp->m_flags |= XFS_MOUNT_BARRIER;
                        break;
                case Opt_nobarrier:
+                       xfs_warn(mp, "%s option is deprecated, ignoring.", p);
                        mp->m_flags &= ~XFS_MOUNT_BARRIER;
                        break;
                case Opt_inode64: