a little while ago, I made some compat43 syscall args non optional.  but
we don't really need them.  removing the compat will allow us to make
getpid SMP safe again  (web scale!)

Index: kern_prot.c
===================================================================
RCS file: /home/tedu/cvs/src/sys/kern/kern_prot.c,v
retrieving revision 1.48
diff -u -p -r1.48 kern_prot.c
--- kern_prot.c 4 Apr 2011 13:00:13 -0000       1.48
+++ kern_prot.c 7 Jul 2011 06:18:50 -0000
@@ -59,8 +59,7 @@ int
 sys_getpid(struct proc *p, void *v, register_t *retval)
 {
 
-       retval[0] = p->p_p->ps_pid;
-       retval[1] = p->p_p->ps_pptr->ps_pid;
+       *retval = p->p_p->ps_pid;
        return (0);
 }
 
@@ -142,8 +141,7 @@ int
 sys_getuid(struct proc *p, void *v, register_t *retval)
 {
 
-       retval[0] = p->p_cred->p_ruid;
-       retval[1] = p->p_ucred->cr_uid;
+       *retval = p->p_cred->p_ruid;
        return (0);
 }
 
@@ -172,8 +170,7 @@ int
 sys_getgid(struct proc *p, void *v, register_t *retval)
 {
 
-       retval[0] = p->p_cred->p_rgid;
-       retval[1] = p->p_ucred->cr_gid;
+       *retval = p->p_cred->p_rgid;
        return (0);
 }

Reply via email to