On Mon, Apr 11, 2005 at 05:37:42PM +0200, Enrico Scholz wrote: > Herbert Poetzl <[EMAIL PROTECTED]> 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 [1] 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, Herbert > Enrico > > Footnotes: > [1] http://ep09.pld-linux.org/~mmazur/linux-libc-headers/ > _______________________________________________ > Vserver mailing list > [email protected] > http://list.linux-vserver.org/mailman/listinfo/vserver _______________________________________________ Vserver mailing list [email protected] http://list.linux-vserver.org/mailman/listinfo/vserver
