Commit Message

* Eric W. Biederman <ebiederm@xmission.com>:
> Setting si_code to __SI_FAULT results in a userspace seeing> an si_code of 0. This is the same si_code as SI_USER. Posix> and common sense requires that SI_USER not be a signal specific> si_code. As such this use of 0 for the si_code is a pretty> horribly broken ABI.> > Given that alpha is on it's last legs I don't know that it is worth> fixing this, but it is worth documenting what is going on so that> no one decides to copy this bad decision.
The ABI was already broken, so IMHO I think it's better to somehow "fix"
it instead. Agreed, alpha and some other architectures are already aged,
but nevertheless most of them build in debian-ports. Below is a
suggested fix which reuses/misuses other existing trap codes instead.
Helge
Signed-off-by: Helge Deller <deller@gmx.de>

Michael Cree <mcree@orcon.net.nz> writes:
> On Fri, Jul 14, 2017 at 05:59:06AM -0500, Eric W. Biederman wrote:>> in which cases the oddities will happen let alone test them. Plus at>> least for ia64 and alpha those architectures don't appear to be>> receiving updates for new syscalls, and no new hardware is being built>> so I don't know how much longer they will last.>> >> That is building for alpha gives:>> > CALL /home/eric/projects/linux/linux-exit-cleanups/scripts/checksyscalls.sh>> > <stdin>:1239:2: warning: #warning syscall seccomp not implemented [-Wcpp]>> > <stdin>:1248:2: warning: #warning syscall bpf not implemented [-Wcpp]>> > <stdin>:1299:2: warning: #warning syscall userfaultfd not implemented [-Wcpp]>> > <stdin>:1302:2: warning: #warning syscall membarrier not implemented [-Wcpp]>> > <stdin>:1305:2: warning: #warning syscall mlock2 not implemented [-Wcpp]>> > <stdin>:1308:2: warning: #warning syscall copy_file_range not implemented [-Wcpp]>> > <stdin>:1311:2: warning: #warning syscall preadv2 not implemented [-Wcpp]>> > <stdin>:1314:2: warning: #warning syscall pwritev2 not implemented [-Wcpp]>> > <stdin>:1317:2: warning: #warning syscall pkey_mprotect not implemented [-Wcpp]>> > <stdin>:1320:2: warning: #warning syscall pkey_alloc not implemented [-Wcpp]>> > <stdin>:1323:2: warning: #warning syscall pkey_free not implemented [-Wcpp]>> > <stdin>:1326:2: warning: #warning syscall statx not implemented [-Wcpp]>> Patches to wire up most of those syscalls on Alpha was posted recently> along with others to fix module loading, etc., but unfortunately they> do not appear to have been applied during the merge window...
Odd.
In general wiring up system calls is something that can even happen in
-rc2 or -rc3 as system calls get added in -rc1 and then the
architectures have a chance to send in the small patches wiring the up.
At least that is how I understand the usual rules for being a non-x86
architecture.
Eric