[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <dfa2aede-3a42-2b04-1d31-93a670a785cc@samba.org>
Date: Mon, 17 Aug 2020 14:07:42 -0500
From: Steven French <sfrench@...ba.org>
To: Jeff Layton <jlayton@...hat.com>,
David Wysochanski <dwysocha@...hat.com>,
David Howells <dhowells@...hat.com>
Cc: Steve French <smfrench@...il.com>,
Linus Torvalds <torvalds@...ux-foundation.org>,
Alexander Viro <viro@...iv.linux.org.uk>,
Matthew Wilcox <willy@...radead.org>,
Christoph Hellwig <hch@....de>,
Trond Myklebust <trondmy@...merspace.com>,
Anna Schumaker <anna.schumaker@...app.com>,
Eric Van Hensbergen <ericvh@...il.com>,
linux-cachefs@...hat.com, linux-afs@...ts.infradead.org,
linux-nfs <linux-nfs@...r.kernel.org>,
CIFS <linux-cifs@...r.kernel.org>, ceph-devel@...r.kernel.org,
v9fs-developer@...ts.sourceforge.net,
linux-fsdevel <linux-fsdevel@...r.kernel.org>,
LKML <linux-kernel@...r.kernel.org>
Subject: Re: [GIT PULL] fscache rewrite -- please drop for now
On 8/10/20 12:06 PM, Jeff Layton wrote:
> On Mon, 2020-08-10 at 12:35 -0400, David Wysochanski wrote:
>> On Mon, Aug 10, 2020 at 11:48 AM David Howells <dhowells@...hat.com> wrote:
>>> Steve French <smfrench@...il.com> wrote:
>>>
>>>> cifs.ko also can set rsize quite small (even 1K for example, although
>>>> that will be more than 10x slower than the default 4MB so hopefully no
>>>> one is crazy enough to do that).
>>> You can set rsize < PAGE_SIZE?
>>>
>>>> I can't imagine an SMB3 server negotiating an rsize or wsize smaller than
>>>> 64K in today's world (and typical is 1MB to 8MB) but the user can specify a
>>>> much smaller rsize on mount. If 64K is an adequate minimum, we could change
>>>> the cifs mount option parsing to require a certain minimum rsize if fscache
>>>> is selected.
>>> I've borrowed the 256K granule size used by various AFS implementations for
>>> the moment. A 512-byte xattr can thus hold a bitmap covering 1G of file
>>> space.
>>>
>>>
>> Is it possible to make the granule size configurable, then reject a
>> registration if the size is too small or not a power of 2? Then a
>> netfs using the API could try to set equal to rsize, and then error
>> out with a message if the registration was rejected.
>>
> ...or maybe we should just make fscache incompatible with an
> rsize that isn't an even multiple of 256k? You need to set mount options
> for both, typically, so it would be fairly trivial to check this at
> mount time, I'd think.
Yes - if fscache is specified on mount it would be easy to round rsize
up (or down), at least for cifs.ko (perhaps simply in the mount.cifs
helper so a warning could be returned to the user) to whatever boundary
you prefer in fscache. The default of 4MB (or 1MB for mounts to some
older servers) should be fine. Similarly if the user requested the
default but the server negotiated an unusual size, not a multiple of
256K, we could round try to round it down if possible (or fail the mount
if not possible to round it down to 256K).
Powered by blists - more mailing lists