From: "J. Bruce Fields" <bfields@fieldses.org>
To: Jeff Layton <jlayton@redhat.com>
Cc: Pavel Shilovsky <piastry@etersoft.ru>,
linux-kernel@vger.kernel.org, linux-cifs@vger.kernel.org,
linux-fsdevel@vger.kernel.org, linux-nfs@vger.kernel.org,
wine-devel@winehq.org
Subject: Re: [PATCH v3 7/7] NFSD: Pass share reservations flags to VFS
Date: Mon, 11 Mar 2013 15:36:38 -0400 [thread overview]
Message-ID: <20130311193638.GB642@fieldses.org> (raw)
In-Reply-To: <20130311150540.119abd63@corrin.poochiereds.net>
On Mon, Mar 11, 2013 at 03:05:40PM -0400, Jeff Layton wrote:
> knfsd has some code already to handle share reservations internally.
> Nothing outside of knfsd is aware of these reservations, of course so
> moving to a vfs-level object for it would be a marked improvement.
>
> It doesn't look like this patch removes any of that old code though. I
> think it probably should, or there ought to be some consideration of
> how this new stuff will mesh with it.
>
> I think you have 2 choices here:
>
> 1/ rip out the old share reservation code altogether and require that
> filesystems mount with -o sharemand or whatever if they want to allow
> their enforcement
>
> 2/ make knfsd fall back to using the internal share reservation code
> when the mount option isn't enabled
>
> Personally, I think #1 would be fine, but Bruce may want to weigh in on
> what he'd prefer.
#1 sounds good. Clients that use deny bits are few. My preference
would be to return an error to such clients in the case share locks
aren't available.
(We're a little out of spec there, so I'm not sure which error. I think
the goal is to notify a human there's a problem with minimal collateral
damange.
NFS4ERR_SERVERFAULT ("I'm a buggy server, sorry about that!") would
probably result in an IO error to the application.
SHARE_DENIED strikes me as unsafe: an application would be in its rights
not to even check for that e.g. in the case of an exclusive create.
Maybe DELAY? Kind of ridiculous, but blocking the application
indefinitely would probably get someone's attention quickly enough
without doing any damnage.)
--b.
next prev parent reply other threads:[~2013-03-11 19:36 UTC|newest]
Thread overview: 37+ messages / expand[flat|nested] mbox.gz Atom feed top
2013-02-28 15:25 [PATCH v3 0/7] Add O_DENY* support for VFS and CIFS/NFS Pavel Shilovsky
2013-02-28 15:25 ` [PATCH v3 1/7] fcntl: Introduce new O_DENY* open flags Pavel Shilovsky
2013-02-28 15:25 ` [PATCH v3 2/7] vfs: Add O_DENYREAD/WRITE flags support for open syscall Pavel Shilovsky
2013-03-11 18:46 ` Jeff Layton
2013-03-11 18:57 ` Pavel Shilovsky
2013-03-11 19:10 ` Jeff Layton
2013-02-28 15:25 ` [PATCH v3 3/7] CIFS: Add O_DENY* open flags support Pavel Shilovsky
2013-03-11 18:50 ` Jeff Layton
2013-02-28 15:25 ` [PATCH v3 4/7] CIFS: Use NT_CREATE_ANDX command for forcemand mounts Pavel Shilovsky
2013-03-11 18:52 ` Jeff Layton
2013-02-28 15:25 ` [PATCH v3 5/7] CIFS: Translate SHARING_VIOLATION to -ETXTBSY error code for SMB2 Pavel Shilovsky
2013-03-11 18:35 ` Jeff Layton
2013-03-11 18:59 ` Pavel Shilovsky
2013-02-28 15:25 ` [PATCH v3 6/7] NFSv4: Add O_DENY* open flags support Pavel Shilovsky
2013-03-11 18:54 ` Jeff Layton
2013-03-12 12:35 ` Jeff Layton
2013-04-04 10:30 ` Pavel Shilovsky
2013-04-04 13:02 ` Jeff Layton
2013-04-04 17:45 ` Pavel Shilovsky
2013-02-28 15:25 ` [PATCH v3 7/7] NFSD: Pass share reservations flags to VFS Pavel Shilovsky
2013-03-11 19:05 ` Jeff Layton
2013-03-11 19:36 ` J. Bruce Fields [this message]
2013-03-11 20:08 ` Jeff Layton
2013-03-11 20:11 ` J. Bruce Fields
2013-03-11 20:25 ` Frank S Filz
2013-03-11 20:31 ` J. Bruce Fields
2013-03-11 20:37 ` Frank S Filz
2013-02-28 21:53 ` [PATCH v3 0/7] Add O_DENY* support for VFS and CIFS/NFS Andy Lutomirski
2013-03-01 6:44 ` Pavel Shilovsky
2013-03-01 8:17 ` David Laight
2013-03-04 21:19 ` J. Bruce Fields
2013-03-04 22:49 ` Simo
2013-03-05 18:13 ` J. Bruce Fields
2013-03-05 19:07 ` Simo
2013-03-11 13:59 ` Pavel Shilovsky
2013-03-11 18:18 ` Andy Lutomirski
2013-03-11 18:21 ` J. Bruce Fields
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=20130311193638.GB642@fieldses.org \
--to=bfields@fieldses.org \
--cc=jlayton@redhat.com \
--cc=linux-cifs@vger.kernel.org \
--cc=linux-fsdevel@vger.kernel.org \
--cc=linux-kernel@vger.kernel.org \
--cc=linux-nfs@vger.kernel.org \
--cc=piastry@etersoft.ru \
--cc=wine-devel@winehq.org \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).