Re: [PATCH v3 0/2] openat2: minor uapi cleanups

From: Al Viro
Date: Sat Jan 18 2020 - 10:28:55 EST


On Sat, Jan 18, 2020 at 11:07:58PM +1100, Aleksa Sarai wrote:
> Patch changelog:
> v3:
> * Merge changes into the original patches to make Al's life easier.
> [Al Viro]
> v2:
> * Add include <linux/types.h> to openat2.h. [Florian Weimer]
> * Move OPEN_HOW_SIZE_* constants out of UAPI. [Florian Weimer]
> * Switch from __aligned_u64 to __u64 since it isn't necessary.
> [David Laight]
> v1: <https://lore.kernel.org/lkml/20191219105533.12508-1-cyphar@xxxxxxxxxx/>
>
> While openat2(2) is still not yet in Linus's tree, we can take this
> opportunity to iron out some small warts that weren't noticed earlier:
>
> * A fix was suggested by Florian Weimer, to separate the openat2
> definitions so glibc can use the header directly. I've put the
> maintainership under VFS but let me know if you'd prefer it belong
> ot the fcntl folks.
>
> * Having heterogenous field sizes in an extensible struct results in
> "padding hole" problems when adding new fields (in addition the
> correct error to use for non-zero padding isn't entirely clear ).
> The simplest solution is to just copy clone(3)'s model -- always use
> u64s. It will waste a little more space in the struct, but it
> removes a possible future headache.
>
> This patch is intended to replace the corresponding patches in Al's
> #work.openat2 tree (and *will not* apply on Linus' tree).
>
> @Al: I will send some additional patches later, but they will require
> proper design review since they're ABI-related features (namely,
> adding a way to check what features a syscall supports as I
> outlined in my talk here[1]).

#work.openat2 updated, #for-next rebuilt and force-pushed. There's
a massive update of #work.namei as well, also pushed out; not in
#for-next yet, will post the patch series for review later today.