On 2019-07-19, Dmitry V. Levin ldv@altlinux.org wrote:
On Sun, Jul 07, 2019 at 12:57:35AM +1000, Aleksa Sarai wrote: [...]
+/**
- Arguments for how openat2(2) should open the target path. If @extra is zero,
- then openat2(2) is identical to openat(2).
- @flags: O_* flags (unknown flags ignored).
What was the rationale for implementing this semantics? Ignoring unknown flags makes potential extension of this new interface problematic. This has bitten us many times already, so ...
I am mirroring the semantics of open(2) and openat(2).
To be clear, I am in favour of doing it -- and it would definitely be possible to implement it with -EINVAL (you would just mask off ~VALID_OPEN_FLAGS for the older syscalls). But Linus' response to my point about (the lack of) -EINVAL for unknown open(2) flags gave me the impression he would be against this idea (though I might be misunderstanding the point he was making).