xfs
[Top] [All Lists]

Re: [PATCH] stop rejecting options in remount

To: Christoph Hellwig <hch@xxxxxx>
Subject: Re: [PATCH] stop rejecting options in remount
From: Timothy Shimmin <tes@xxxxxxx>
Date: Fri, 15 Aug 2008 13:55:48 +1000
Cc: xfs@xxxxxxxxxxx, jasper@xxxxxxxxxxxx, daniel.blueman@xxxxxxxxx
In-reply-to: <20080814203636.GA18704@xxxxxx>
References: <20080809195159.GA8562@xxxxxx> <20080814203636.GA18704@xxxxxx>
Sender: xfs-bounce@xxxxxxxxxxx
User-agent: Thunderbird 2.0.0.16 (Macintosh/20080707)
Hi Christoph,

Yeah, I'll check in this temp solution.
I'll also check in the qa test for remount.
The qa test can be updated when the remount code is updated.

--Tim

Christoph Hellwig wrote:
> 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>