Module Name: src Committed By: pooka Date: Wed Sep 1 19:13:39 UTC 2010
Modified Files: src/sys/rump/librump/rumpkern: rumpkern.ifspec Log Message: Rewrite rump process and lwp allocation routines now that I have some idea of how they should be done. This change essentially moves the responsibility of pid/lwpid management from the application side into the rump kernel. It also introduces clear rules on what happens when, i.e. introduces semantics (these semantics will be documented on the man page, and more importantly in atf tests). To generate a diff of this commit: cvs rdiff -u -r1.5 -r1.6 src/sys/rump/librump/rumpkern/rumpkern.ifspec Please note that diffs are not public domain; they are subject to the copyright notices on the relevant files.
Modified files: Index: src/sys/rump/librump/rumpkern/rumpkern.ifspec diff -u src/sys/rump/librump/rumpkern/rumpkern.ifspec:1.5 src/sys/rump/librump/rumpkern/rumpkern.ifspec:1.6 --- src/sys/rump/librump/rumpkern/rumpkern.ifspec:1.5 Wed Apr 14 14:12:48 2010 +++ src/sys/rump/librump/rumpkern/rumpkern.ifspec Wed Sep 1 19:13:38 2010 @@ -1,4 +1,4 @@ -; $NetBSD: rumpkern.ifspec,v 1.5 2010/04/14 14:12:48 pooka Exp $ +; $NetBSD: rumpkern.ifspec,v 1.6 2010/09/01 19:13:38 pooka Exp $ NAME|kern PUBHDR|include/rump/rumpkern_if_pub.h @@ -21,16 +21,16 @@ size_t |uio_free |struct uio * struct kauth_cred*|cred_create |uid_t, gid_t, size_t, gid_t * -struct kauth_cred*|cred_suserget|void void |cred_put |struct kauth_cred * -; lwp interfaces. these need much love -struct lwp * |newproc_switch |void -struct lwp * |lwp_alloc |pid_t, lwpid_t -struct lwp * |lwp_alloc_and_switch |pid_t, lwpid_t -struct lwp * |lwp_curlwp |void -void |lwp_switch |struct lwp * -void |lwp_release |struct lwp * +; lwp and proc creation / switching interfaces +int |lwproc_newproc |void +int |lwproc_newlwp |pid_t +void |lwproc_switch |struct lwp * +void |lwproc_releaselwp |void +struct lwp * |lwproc_curlwp |void + +void |allbetsareoff_setid |pid_t, int int |sysproxy_set |rump_sysproxy_t, void * int |sysproxy_socket_setup_client |int