From: Dave A. <ai...@us...> - 2001-05-23 22:26:07
|
Update of /cvsroot/linux-vax/kernel-2.4/include/asm-vax In directory usw-pr-cvs1:/tmp/cvs-serv22488/include/asm-vax Modified Files: unistd.h Log Message: DA: added some comments Index: unistd.h =================================================================== RCS file: /cvsroot/linux-vax/kernel-2.4/include/asm-vax/unistd.h,v retrieving revision 1.5 retrieving revision 1.6 diff -u -r1.5 -r1.6 --- unistd.h 2001/05/20 19:34:09 1.5 +++ unistd.h 2001/05/23 22:26:00 1.6 @@ -1,6 +1,12 @@ #ifndef _ASM_VAX_UNISTD_H_ #define _ASM_VAX_UNISTD_H_ +/* + * syscall macros Copyright (c) David Airlie 2001 (ai...@li...) + * -- see comments + */ + + /* FIXME: Who do we want to be compatible with? * e.g. see ../asm-mips/unistd.h */ @@ -200,6 +206,22 @@ /* user-visible error numbers are in the range -1 - -122: see <asm-i386/errno.h> */ +/* + * syscall functions for system calls with 0->5 arguments are implemented + * here-in, for inclusion in libc also. + * All syscalls are implemented the same, the syscall arguments are + * pushed onto the stack, the number of arguments is pushed, the sp + * is loaded into the ap register and the chmk call is made with the + * syscall number as the argument in the r0 register. + * + * Possible optimisations, don't need to use r0 to pass the chmk argument + * suggested by Kenn, will examine later as we are using r0 for the + * return value. + * + * Opposing code is in arch/vax/kernel/syscall.c as is from Kenn Humborg, + * any changes here should be reflected there and vice-versa. + * - Dave Airlie, May 2001 + */ /* this from alpha port, easier to rework - atp */ #define _syscall_return(type) \ |