Re: [PATCHv3 0/4] sys_indirect system call

Ulrich Drepper
2007-11-18T09:40:59Z

-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA1

H. Peter Anvin wrote:
> It seems to me that we could accomplish the same thing by passing the
> number of parameters in the upper bits of the system call number
> register (%eax in the case of x86.)

This isn't really a generic solution. The number of parameters is
limited to six. There are syscalls with six parameters already. There
are many more with five which could only handle one more parameter.

Also, is it really simpler? You'd need to have another table which
contains the default number of parameters a system call takes so that
you can fill in the default value of zero. This extra memory access has
to be performed for every system call.

I think it is unlikely that this approach is faster. To the contrary,
I'd guess.

I don't have much invested into this but it seems the sys_indirect
approach is so much simpler. Overhead is only paid if you really need
it which is rarely the case. Plus, you might have heard Linus and Zack
talk about syslets again. Starting syslets can be done using the same
interface, I guess.

- --
➧ Ulrich Drepper ➧ Red Hat, Inc. ➧ 444 Castro St ➧ Mountain View, CA ❖
-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1.4.7 (GNU/Linux)
Comment: Using GnuPG with Fedora - http://enigmail.mozdev.org

iD8DBQFHQAez2ijCOnn/RHQRAjoHAJ4/Qq4ygaZ4uq6uCIVNq4hfN1m2pACgpJFi
Z/vBsGFpUc/EUz+VW66jEIY=
=B19x
-----END PGP SIGNATURE-----