From: Jeff Layton <jlayton@poochiereds.net>
To: Andy Lutomirski <luto@amacapital.net>
Cc: "ksummit-discuss@lists.linuxfoundation.org"
<ksummit-discuss@lists.linuxfoundation.org>
Subject: Re: [Ksummit-discuss] [CORE TOPIC] Reviewing new API/ABI
Date: Fri, 9 May 2014 07:33:28 -0400 [thread overview]
Message-ID: <20140509073328.36ac0b42@tlielax.poochiereds.net> (raw)
In-Reply-To: <CALCETrU_xrdgUNF55YU+8rfq2xK0cU3QybQhqvX4L8OgsiwG5A@mail.gmail.com>
On Tue, 6 May 2014 10:45:05 -0700
Andy Lutomirski <luto@amacapital.net> wrote:
> There doesn't currently seem to be any real process for reviewing new
> core APIs for sanity of design, appropriateness to solve the problem
> they're targetting, or correctness of implementation. Some examples
> that come to mind recently:
>
> - A lot of people seem to think that O_TMPFILE is a terrible
> interface, despite the fact that the functionality it provides is very
> useful. It was also rather badly broken until -rc8 or so.
>
> - The x86 32-bit vdso clock functions almost made it in with a
> questionable symbol version.
>
> - 3.15 is currently slated to include an unfortunate ABI glitch in
> the MIPS seccomp filter interface. There's a patch.
>
> - There are some aspects of the keyring API that seem to me to be quite bad.
>
> - An impressive number of new APIs are missing -EINVAL returns if
> reserved parameters are set.
>
> (I'm not trying to point a finger at anyone with these examples;
> they're just things that I was involved in to some extent.)
>
> The current process is confused. For example, I currently plan on
> trying to remember to ask Linus to revert the MIPS seccomp stuff or
> fix it sometime around -rc6 if the patch hasn't landed, but this
> sucks.
>
> I think that the process could be improved. I think that there are
> people who are willing to spend time to read API docs and thinking
> about these kinds of issues. (I am, and Michael Kerrisk seems to do a
> fair amount of it.)
>
> I would like to discuss what we could change to make this work better
> in the future. In an ideal world, I would like to see every core API
> change come with documentation, tests (possibly simple ones), and a
> post, with acks, to a list that covers just API changes. This might
> be tough, but it could add a lot of value.
>
> I've occasionally thought that API docs should live in the kernel tree
> in some reasonably well organized place so that patch sets can include
> doc patches. I realize that this is contentious.
>
> I'm sure that other people have other suggestions here.
>
> --Andy
>
> P.S. I'm not on the invitation nominee list, so if people like this
> topic, I'd appreciate a nomination :)
I'd be interested in discussing this as well.
I just went through a bunch of gyrations with the file-private -> OFD
file lock renaming. I originally posted these patches over several
months, but it wasn't until it was merged that people started speaking
out over the name. Perhaps if I had known about linux-api@ and had
cc'ed it on those patches, we might have gotten that squared away
earlier?
Also, I'm still interested in getting this driven back into POSIX spec,
so having a more well-defined way to interact with the POSIX folks
would be helpful.
There are some open questions here too, notably: How are we defining
API/ABI? Clearly a new syscall is a change that needs to be carefully
vetted. What about a new mount option? Does that qualify?
While I think having a lot of eyes on userland-visible changes is a
good thing, we need to take heed not to make such a process too formal
or it'll become painful to deal with.
--
Jeff Layton <jlayton@poochiereds.net>
next prev parent reply other threads:[~2014-05-09 11:33 UTC|newest]
Thread overview: 31+ messages / expand[flat|nested] mbox.gz Atom feed top
2014-05-06 17:45 Andy Lutomirski
2014-05-06 17:58 ` josh
2014-05-06 19:12 ` Shuah Khan
2014-05-06 19:16 ` Andy Lutomirski
2014-05-06 19:37 ` Shuah Khan
2014-05-06 19:21 ` Johannes Berg
2014-05-06 19:43 ` Andy Lutomirski
2014-05-06 19:48 ` Johannes Berg
2014-05-06 19:51 ` Andy Lutomirski
2014-05-06 19:45 ` josh
2014-05-06 20:10 ` Daniel Vetter
2014-05-06 20:13 ` Andy Lutomirski
2014-05-07 10:12 ` Laurent Pinchart
2014-05-07 12:36 ` Daniel Vetter
2014-05-07 13:30 ` Laurent Pinchart
2014-05-07 13:50 ` Hans Verkuil
2014-05-12 14:15 ` Wolfram Sang
2014-05-07 17:48 ` Michael Kerrisk (man-pages)
2014-05-06 19:00 ` Greg KH
2014-05-06 20:07 ` Steven Rostedt
2014-05-06 20:34 ` Josh Triplett
2014-05-06 20:42 ` Steven Rostedt
2014-05-06 21:00 ` josh
2014-05-07 11:48 ` Jiri Kosina
2014-05-08 6:35 ` Li Zefan
2014-05-12 6:37 ` Jiri Kosina
2014-05-07 6:27 ` Michael Kerrisk (man-pages)
2014-05-06 19:57 ` Dan Carpenter
2014-05-08 18:15 ` Randy Dunlap
2014-05-09 11:33 ` Jeff Layton [this message]
2014-05-09 11:50 ` Michael Kerrisk (man-pages)
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=20140509073328.36ac0b42@tlielax.poochiereds.net \
--to=jlayton@poochiereds.net \
--cc=ksummit-discuss@lists.linuxfoundation.org \
--cc=luto@amacapital.net \
/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