Thread (73 messages) 73 messages, 9 authors, 2016-06-27

[PATCH 01/23] all: syscall wrappers: add documentation

flat view

From: arnd@arndb.de (Arnd Bergmann)
Date: 2016-05-27 08:43:46
Also in: linux-arch, linux-s390, lkml

On Friday, May 27, 2016 8:03:57 AM CEST Heiko Carstens wrote:
quoted
quoted
quoted
quoted
Cost wise, this seems like it all cancels out in the end, but what
do I know?
I think you know something, and I also think Heiko and other s390 guys
know something as well. So I'd like to listen their arguments here.
If it comes to 64 bit arguments for compat system calls: s390 also has an
x32-like ABI extension which allows user space to use full 64 bit
registers. As far as I know hardly anybody ever made use of that.

However even if that would be widely used, to me it wouldn't make sense to
add new compat system calls which allow 64 bit arguments, simply because
something like

c = (u32)a | (u64)b << 32;

can be done with a single 1-cycle instruction. It's just not worth the
extra effort to maintain additional system call variants.
For reference, both tile and mips also have separate 32-bit ABIs that are
only used on 64-bit kernels (aside from the normal 32-bit ABI). Tile
does it like s390 and passes 64-bit arguments as pairs, while MIPS
and x86 and pass them as single registers.

Tile is very similar to arm64 because it also uses the generic system
call table, which I think is a good argument to keep them in sync.

	Arnd
Keyboard shortcuts
hback out one level
jnext message in thread
kprevious message in thread
ldrill in
Escclose help / fold thread tree
?toggle this help