On Mon, 24 Jun 2002, Ralf Baechle wrote:
It's in the kernel for no better reason than Risc/OS and IRIX having this
syscall. Also the glibc syscall implementation was historically broken
wrt. syscall restarting and a few other subtilities.
Well, userland implementations for other archs seem quite
straightforward. So should be ours -- we only have to shuffle arguments
appropriately. Restarting is easy -- we just have to make sure to reload
v0 just before "syscall" reliably (we can use a static register or an
automatic variable to preserve it). What are the few other subtleties?
Also I can't see an implementation of syscall() for MIPS/Linux anywhere
in glibc. What implementation do you refer to? The Mach one?
The win is we don't have to mess with user accesses specially -- the
final syscall will handle them.
--
+ Maciej W. Rozycki, Technical University of Gdansk, Poland +
+--------------------------------------------------------------+
+ e-mail: macro@ds2.pg.gda.pl, PGP key available +