]> 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.
 
        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
   discard
   nodiscard (*)
        Enable/disable the issuing of commands to let the block
@@ -228,7 +221,10 @@ default behaviour.
 Deprecated Mount Options
 ========================
 
 Deprecated Mount Options
 ========================
 
-None at present.
+  Name                         Removal Schedule
+  ----                         ----------------
+  barrier                      no earlier than v4.15
+  nobarrier                    no earlier than v4.15
 
 
 Removed Mount Options
 
 
 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_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 */
        {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 */
        {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},
 };
 
        {Opt_err,       NULL},
 };
 
@@ -301,12 +304,6 @@ xfs_parseargs(
                case Opt_nouuid:
                        mp->m_flags |= XFS_MOUNT_NOUUID;
                        break;
                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;
                case Opt_ikeep:
                        mp->m_flags |= XFS_MOUNT_IKEEP;
                        break;
@@ -374,6 +371,14 @@ xfs_parseargs(
                        mp->m_flags |= XFS_MOUNT_DAX;
                        break;
 #endif
                        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;
                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:
                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:
                        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:
                        mp->m_flags &= ~XFS_MOUNT_BARRIER;
                        break;
                case Opt_inode64: