On Wed, Mar 06, 2019 at 07:37:00AM -0800, Frank Filz wrote: > > On Wed, Mar 06, 2019 at 09:09:21AM +0200, Amir Goldstein wrote: > > > On Tue, Mar 5, 2019 at 11:48 PM J. Bruce Fields > > > <bfields@xxxxxxxxxxxx> wrote: > > > > > > > > On Thu, Feb 14, 2019 at 04:06:52PM -0500, J. Bruce Fields wrote: > > > > > After this: > > > > > > > > > > https://marc.info/?l=linux-nfs&m=154966239918297&w=2 > > > > > > > > > > delegations would no longer conflict with opens from the same > > > > > tgid. So if your threads all run in the same process and > > > > > you're willing to manage conflicts among your own clients, > > > > > that should still allow you to do multiple opens of the same > > > > > file without giving up your > > lease/delegation. > > > > > > > > > > I'd be curious to know whether that works with Samba's design. > > > > > > > > Any idea whether that would work? > > > > > > > > (Easy? Impossible? Possible, but realistically the changes > > > > required to Samba would be painful enough that it'd be unlikely > > > > to get done?) > > > > > > > > > > [CC Ralph Boehme] > > > > > > I am not a samba team member, but seems to me that your proposal > > > fits samba design like a glove. With one smbd process per client > > > connection, with your proposal, opens (for read) from same smbd > > > process will not break the shared read lease from same client, so > > > oplocks level II could be implemented using kernel oplocks (new > > > flavor). > > > > OK. So I wonder about Ganesha. I'm not sure, but I *think* it's > > like knfsd in that it has a bunch of worker threads that can each > > take rpc's from any client. I don't remember if they're actually > > threads or processes. > > Ganesha does use worker threads And they're all part of one process? > however, one thing that may be an > advantage here, or at least can be leveraged, is that Ganesha attaches > a single file descriptor to each stateid. As long as the I/O requests > come using the stateid, that file descriptor will be used. > > We have some work completed and more in progress on delegations, and > if there becomes a new kernel oplock available, we could definitely > use it. On the other hand, FSAL_VFS which is the FSAL used with kernel > file systems does not support delegations... > > The (distributed) file systems we support delegations on have use > space libraries (which Samba should also be using?) that implement the > delegation primitives. Is there anyone working on delegation support for FSAL_VFS? If it's not getting much attention then maybe Samba is the only real user for the forseeable future. --b.