support for calling Linux syscalls directly

Rich Felker dalias@aerifal.cx
Tue Feb 12 18:05:00 GMT 2013


On Tue, Feb 12, 2013 at 12:52:52PM -0500, David Miller wrote:
> From: chrubis@suse.cz
> Date: Tue, 12 Feb 2013 18:46:38 +0100
> 
> > I do the LTP[1] which makes legitimate use of syscall(3) as for the
> > testing purposes we need to be able to call bare syscalls in order to
> > validate both glibc and kernel API. And removing the call would mess
> > backward compatibility.
> 
> I don't think it makes sense for every source tree that wants to
> call syscall directly to have to duplicate over and over again the
> argument passing quirks of various architectures.
> 
> Multiple instances of such tricky code means multiple places for
> the same bugs over and over again.

LTP is a very special case. It's a test suite for the kernel API/ABI,
so of course it needs to be aware of (and testing!) these differences
to make sure nobody breaks them (which would in turn break glibc).

In any case, I don't think anybody's proposing that the syscall()
function itself be removed from glibc, just that the deficiencies
which necessitate its use in some application code be fixed so that
its use can be phased out in most applications.

Rich



More information about the Libc-alpha mailing list