From: Herbert Poetzl (herbert_at_13thfloor.at)
Date: Mon 11 Apr 2005 - 17:05:53 BST
On Mon, Apr 11, 2005 at 05:37:42PM +0200, Enrico Scholz wrote:
> Herbert Poetzl <herbert_at_13thfloor.at> writes:
> >> >> I guess it was using _syscall3() instead of syscall().
> >> ...
> >> To clearify things:
> >> util-vserver prefers to use _syscall3() (which is called 'fast'
> >> syscall invocation method in the ./configure output) when it is
> >> available. _syscall3() is often implemented with inline assembler
> >> in <asm/unistd.h>. But at least on i386, it can not be used in
> >> combination with dynamic linking as it writes to the %ebx register
> >> which is reserved for PIC addressing.
> >> Therefore, most glibc kernel-headers do not provide the _syscallX()
> >> functions overall and the 'traditional' syscall(2) must be used.
> > what if we implement the _syscall3 for all known platforms
> > in a proper way, and feed them back to glibc/kernel headers
> > as well as integrate them into dietlibc and/or util-vserver?
> The kernel (resp. projects like  which provide sanitized
> headers) would be the right place for such changes. But there
> will pass much time before you can rely on it. These headers
> are/should not be provided by libc implementations.
okay, so the natural solution to that is to put them
into the util-vserver tools, which will have immediate
effect by reducing dependancies to libc ...
thanks for the clarification,
>  http://ep09.pld-linux.org/~mmazur/linux-libc-headers/
> Vserver mailing list
Vserver mailing list