All of lore.kernel.org
 help / color / mirror / Atom feed
From: Al Viro <viro@zeniv.linux.org.uk>
To: Trond Myklebust <trondmy@hammerspace.com>
Cc: "dhowells@redhat.com" <dhowells@redhat.com>,
	"hch@lst.de" <hch@lst.de>,
	"osandov@osandov.com" <osandov@osandov.com>,
	"miklos@szeredi.hu" <miklos@szeredi.hu>,
	"linux-fsdevel@vger.kernel.org" <linux-fsdevel@vger.kernel.org>,
	"amir73il@gmail.com" <amir73il@gmail.com>,
	"lsf-pc@lists.linux-foundation.org" 
	<lsf-pc@lists.linux-foundation.org>
Subject: Re: [LSF/MM/BPF TOPIC] Allowing linkat() to replace the destination
Date: Fri, 17 Jan 2020 16:01:09 +0000	[thread overview]
Message-ID: <20200117160109.GL8904@ZenIV.linux.org.uk> (raw)
In-Reply-To: <18dad9903c4f5c63300048e9ed2a8706ad31bc73.camel@hammerspace.com>

On Fri, Jan 17, 2020 at 02:56:05PM +0000, Trond Myklebust wrote:

> It sounds to me like we rather need a meta-topic about "How do we get
> simple things done in the Linux fs community?"
> 
> It shouldn't take a ticket to Palm Springs to perform something simple
> like adding a new flag to a syscall.

Sure - adding a new flag is trivial.  Coming up with sane semantics for
it, OTOH, can be rather non-trivial and in this case it is, unfortunately.
"something like link(2), only it tolerates the existing target and
atomically replaces it" does _not_ specify the semantics.  Try to sit
down for a few minutes and come up with the cases when behaviour is
undefined by the above; it won't take longer than that.

We can do it by asking the proponent to come up with full description to
be included into the proposal, then have at it on fsdevel/linux-abi (as
well as security lists).  Doable, but not a small amount of PITA for
original poster and dealing with questions/objections/etc. is certain
to grow a large thread with many branches (and lots of bikeshedding
thrown in) _and_ would include tons of roundtrips, so the latency
(especially early on, while the proposal is still raw) will be a factor.

It's not the question of how to implement it; it's what should it _do_.
And "we'll tweak the behaviour in corner cases later on" is good in
a lot of situations, but not for userland ABI.  I'd been guilty of
such fuckups several times and they are not cheap to fix afterwards ;-/

      reply	other threads:[~2020-01-17 16:01 UTC|newest]

Thread overview: 36+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2020-01-17 12:49 [LSF/MM/BPF TOPIC] Allowing linkat() to replace the destination David Howells
2020-01-17 14:33 ` Trond Myklebust
2020-01-17 15:46   ` Al Viro
2020-01-17 16:12     ` Trond Myklebust
2020-01-17 16:48       ` Al Viro
2020-01-17 16:36     ` Omar Sandoval
2020-01-17 16:59       ` Al Viro
2020-01-17 17:28         ` Omar Sandoval
2020-01-17 18:17           ` Al Viro
2020-01-17 20:22             ` Omar Sandoval
2020-01-17 22:22               ` Al Viro
2020-01-17 23:54                 ` Omar Sandoval
2020-01-18  0:47                   ` Al Viro
2020-01-18  1:17                     ` Omar Sandoval
2020-01-18  2:20                       ` Al Viro
2020-01-21 23:05                         ` Omar Sandoval
2020-01-22  6:57                           ` Amir Goldstein
2020-01-22 22:10                             ` Omar Sandoval
2020-01-23  3:47                               ` Al Viro
2020-01-23  7:16                                 ` Dave Chinner
2020-01-23  7:47                                   ` Amir Goldstein
2020-01-24 21:25                                     ` Dave Chinner
2020-01-31  5:24                                       ` Darrick J. Wong
2020-01-31  5:29                                         ` hch
2020-01-31  7:00                                         ` Amir Goldstein
2020-01-31 20:33                                           ` Omar Sandoval
2020-01-31 21:55                                             ` Amir Goldstein
2020-01-28  1:27                                   ` Omar Sandoval
2020-01-28 14:35                                 ` David Howells
2020-01-31  5:31                                   ` hch
2020-01-31  8:04                                   ` David Howells
2020-01-31  8:56                                     ` Amir Goldstein
2020-01-22  9:53                       ` David Howells
2020-01-17 14:47 ` David Howells
2020-01-17 14:56   ` Trond Myklebust
2020-01-17 16:01     ` Al Viro [this message]

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=20200117160109.GL8904@ZenIV.linux.org.uk \
    --to=viro@zeniv.linux.org.uk \
    --cc=amir73il@gmail.com \
    --cc=dhowells@redhat.com \
    --cc=hch@lst.de \
    --cc=linux-fsdevel@vger.kernel.org \
    --cc=lsf-pc@lists.linux-foundation.org \
    --cc=miklos@szeredi.hu \
    --cc=osandov@osandov.com \
    --cc=trondmy@hammerspace.com \
    /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 an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.