Re: [PATCH RFC v3 00/10] extensible syscalls: CHECK_FIELDS to allow for easier feature detection
From: Florian Weimer
Date: Thu Oct 10 2024 - 02:32:31 EST
* Aleksa Sarai:
> This is something that I've been thinking about for a while. We had a
> discussion at LPC 2020 about this[1] but the proposals suggested there
> never materialised.
>
> In short, it is quite difficult for userspace to detect the feature
> capability of syscalls at runtime. This is something a lot of programs
> want to do, but they are forced to create elaborate scenarios to try to
> figure out if a feature is supported without causing damage to the
> system. For the vast majority of cases, each individual feature also
> needs to be tested individually (because syscall results are
> all-or-nothing), so testing even a single syscall's feature set can
> easily inflate the startup time of programs.
>
> This patchset implements the fairly minimal design I proposed in this
> talk[2] and in some old LKML threads (though I can't find the exact
> references ATM). The general flow looks like:
By the way, I have recently tried to document things from a glibc
perspective (which is a bit broader because we also have purely
userspace types):
[PATCH RFC] manual: Document how types change
<https://inbox.sourceware.org/libc-alpha/8734m4n1ij.fsf@xxxxxxxxxxxxxxxxxxxxxxxxx/>
(This patch has not yet been reviewed.)