[<prev] [next>] [<thread-prev] [day] [month] [year] [list]
Message-ID: <4E545FAE.5040008@parallels.com>
Date: Tue, 23 Aug 2011 23:19:26 -0300
From: Glauber Costa <glommer@...allels.com>
To: Dave Chinner <david@...morbit.com>
CC: <linux-kernel@...r.kernel.org>, <linux-fsdevel@...r.kernel.org>,
<containers@...ts.linux-foundation.org>,
Pavel Emelyanov <xemul@...allels.com>,
Al Viro <viro@...iv.linux.org.uk>,
Hugh Dickins <hughd@...gle.com>,
Nick Piggin <npiggin@...nel.dk>,
Andrea Arcangeli <aarcange@...hat.com>,
Rik van Riel <riel@...hat.com>,
Dave Hansen <dave@...ux.vnet.ibm.com>,
James Bottomley <JBottomley@...allels.com>,
Eric Dumazet <eric.dumazet@...il.com>
Subject: Re: [PATCH v3 4/4] parse options in the vfs level
On 08/15/2011 04:09 AM, Dave Chinner wrote:
> On Sun, Aug 14, 2011 at 07:13:52PM +0400, Glauber Costa wrote:
>> This patch introduces a simple generic vfs option parser.
>> Right now, the only option we have is to limit the size of the dcache.
>>
>> So any user that wants to have a dcache entries limit, can specify:
>>
>> mount -o whatever_options,vfs_dcache_size=XXX<dev> <mntpoint>
>>
>> It is supposed to work well with remounts, allowing it to change
>> multiple over the course of the filesystem's lifecycle.
>>
>> I find mount a natural interface for handling filesystem options,
>> so that's what I've choosen. Feel free to yell at it at will if
>> you disagree.
>
> It's already been noted by both myself and Al that there is not a
> 1:1 mapping between mount point and superblocks....
I had skipped that one in my pending patches.
Well, it's already been noted by me as well. And by anybody.
The problem, however, is not new. Filesystems exports fs-specific
options that operate on the superblock as well. And we've been living
alright with them.
>> @@ -2350,6 +2449,12 @@ long do_mount(char *dev_name, char *dir_name, char *type_page,
>> else
>> retval = do_new_mount(&path, type_page, flags, mnt_flags,
>> dev_name, data_page);
>> +
>> + /* bind mounts get to respect their parents decision */
>> + if (!retval&& !(flags& MS_BIND))
>> + vfs_set_dcache_size(path.mnt->mnt_sb,
>> + vfs_options.vfs_dcache_size);
>> +
>
> And I'm not sure that silently ignoring it in certain cases
> is the best way around that problem.
It is not "in certain cases". It is : 1) When bind mounting, and 2) When
an error occurs. Pretty well-defined.
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@...r.kernel.org
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/
Powered by blists - more mailing lists