xfs
[Top] [All Lists]

Re: [PATCH] stop rejecting options in remount

To: xfs@xxxxxxxxxxx
Subject: Re: [PATCH] stop rejecting options in remount
From: Christoph Hellwig <hch@xxxxxx>
Date: Thu, 14 Aug 2008 22:36:36 +0200
Cc: jasper@xxxxxxxxxxxx, daniel.blueman@xxxxxxxxx
In-reply-to: <20080809195159.GA8562@xxxxxx>
References: <20080809195159.GA8562@xxxxxx>
Sender: xfs-bounce@xxxxxxxxxxx
User-agent: Mutt/1.3.28i
On Sat, Aug 09, 2008 at 09:51:59PM +0200, Christoph Hellwig wrote:
> Thanks to some not so nice code in mount(8) we can't blindly reject moun
> options we don't support to be changed in remount.  See the comment in
> the code for more details.

Here is an updated version with a hopefully better worded comments:


Signed-off-by: Christoph Hellwig <hch@xxxxxx>

Index: linux-2.6-xfs/fs/xfs/linux-2.6/xfs_super.c
===================================================================
--- linux-2.6-xfs.orig/fs/xfs/linux-2.6/xfs_super.c     2008-08-14 
17:29:03.000000000 -0300
+++ linux-2.6-xfs/fs/xfs/linux-2.6/xfs_super.c  2008-08-14 17:35:00.000000000 
-0300
@@ -1303,9 +1303,29 @@ xfs_fs_remount(
                        mp->m_flags &= ~XFS_MOUNT_BARRIER;
                        break;
                default:
+                       /*
+                        * Logically we would return an error here to prevent
+                        * users from believing they might have changed
+                        * mount options using remount which can't be changed.
+                        *
+                        * But unfortunately mount(8) adds all options from
+                        * mtab and fstab to the mount arguments in some cases
+                        * so we can't blindly reject options, but have to
+                        * check for each specified option if it actually
+                        * differs from the currently set option and only
+                        * reject it if that's the case.
+                        *
+                        * Until that is implemented we return success for
+                        * every remount request, and silently ignore all
+                        * options that we can't actually change.
+                        */
+#if 0
                        printk(KERN_INFO
        "XFS: mount option \"%s\" not supported for remount\n", p);
                        return -EINVAL;
+#else
+                       return 0;
+#endif
                }
        }
 


<Prev in Thread] Current Thread [Next in Thread>