From: Ben Gras Date: Wed, 23 Sep 2009 10:48:57 +0000 (+0000) Subject: give sys_fork() a real endpoint_t * arg X-Git-Tag: v3.1.5~97 X-Git-Url: http://zhaoyanbai.com/repos/%22http:/www.isc.org/icons/zlib_tech.html?a=commitdiff_plain;h=0d7b96741382ded80ac4e1b2108e4fddb04e3217;p=minix.git give sys_fork() a real endpoint_t * arg --- diff --git a/include/minix/syslib.h b/include/minix/syslib.h index 355e82adb..d4772e59a 100755 --- a/include/minix/syslib.h +++ b/include/minix/syslib.h @@ -34,7 +34,7 @@ _PROTOTYPE( int sys_abort, (int how, ...)); _PROTOTYPE( int sys_enable_iop, (endpoint_t proc_ep)); _PROTOTYPE( int sys_exec, (endpoint_t proc_ep, char *ptr, char *aout, vir_bytes initpc)); -_PROTOTYPE( int sys_fork, (endpoint_t parent, endpoint_t child, int *, +_PROTOTYPE( int sys_fork, (endpoint_t parent, endpoint_t child, endpoint_t *, struct mem_map *ptr, u32_t vm, vir_bytes *)); _PROTOTYPE( int sys_newmap, (endpoint_t proc_ep, struct mem_map *ptr)); _PROTOTYPE( int sys_exit, (endpoint_t proc_ep)); diff --git a/lib/syslib/sys_fork.c b/lib/syslib/sys_fork.c index 1aa4c9034..50035847d 100755 --- a/lib/syslib/sys_fork.c +++ b/lib/syslib/sys_fork.c @@ -3,7 +3,7 @@ PUBLIC int sys_fork(parent, child, child_endpoint, map_ptr, flags, msgaddr) endpoint_t parent; /* process doing the fork */ endpoint_t child; /* which proc has been created by the fork */ -int *child_endpoint; +endpoint_t *child_endpoint; struct mem_map *map_ptr; u32_t flags; vir_bytes *msgaddr; @@ -19,6 +19,6 @@ vir_bytes *msgaddr; m.PR_FORK_FLAGS = flags; r = _taskcall(SYSTASK, SYS_FORK, &m); *child_endpoint = m.PR_ENDPT; - *msgaddr = m.PR_FORK_MSGADDR; + *msgaddr = (vir_bytes) m.PR_FORK_MSGADDR; return r; }