Module Name: src Committed By: pooka Date: Thu May 7 16:04:25 UTC 2009
Modified Files: src/sys/rump/include/rump: rump.h src/sys/rump/librump/rumpkern: rump.c Log Message: Add rump_set_curlwp() for context switch to an existing lwp/proc. To generate a diff of this commit: cvs rdiff -u -r1.17 -r1.18 src/sys/rump/include/rump/rump.h cvs rdiff -u -r1.107 -r1.108 src/sys/rump/librump/rumpkern/rump.c 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/include/rump/rump.h diff -u src/sys/rump/include/rump/rump.h:1.17 src/sys/rump/include/rump/rump.h:1.18 --- src/sys/rump/include/rump/rump.h:1.17 Mon May 4 14:31:25 2009 +++ src/sys/rump/include/rump/rump.h Thu May 7 16:04:25 2009 @@ -1,4 +1,4 @@ -/* $NetBSD: rump.h,v 1.17 2009/05/04 14:31:25 pooka Exp $ */ +/* $NetBSD: rump.h,v 1.18 2009/05/07 16:04:25 pooka Exp $ */ /* * Copyright (c) 2007 Antti Kantee. All Rights Reserved. @@ -138,6 +138,7 @@ struct lwp *rump_newproc_switch(void); struct lwp *rump_setup_curlwp(pid_t, lwpid_t, int); struct lwp *rump_get_curlwp(void); +void rump_set_curlwp(struct lwp *); void rump_clear_curlwp(void); void rump_rcvp_set(struct vnode *, struct vnode *); Index: src/sys/rump/librump/rumpkern/rump.c diff -u src/sys/rump/librump/rumpkern/rump.c:1.107 src/sys/rump/librump/rumpkern/rump.c:1.108 --- src/sys/rump/librump/rumpkern/rump.c:1.107 Sun May 3 17:09:49 2009 +++ src/sys/rump/librump/rumpkern/rump.c Thu May 7 16:04:25 2009 @@ -1,4 +1,4 @@ -/* $NetBSD: rump.c,v 1.107 2009/05/03 17:09:49 pooka Exp $ */ +/* $NetBSD: rump.c,v 1.108 2009/05/07 16:04:25 pooka Exp $ */ /* * Copyright (c) 2007 Antti Kantee. All Rights Reserved. @@ -28,7 +28,7 @@ */ #include <sys/cdefs.h> -__KERNEL_RCSID(0, "$NetBSD: rump.c,v 1.107 2009/05/03 17:09:49 pooka Exp $"); +__KERNEL_RCSID(0, "$NetBSD: rump.c,v 1.108 2009/05/07 16:04:25 pooka Exp $"); #include <sys/param.h> #include <sys/atomic.h> @@ -423,6 +423,16 @@ return l; } +void +rump_set_curlwp(struct lwp *l) +{ + + /* clear current */ + rumpuser_set_curlwp(NULL); + /* set new */ + rumpuser_set_curlwp(l); +} + kauth_cred_t rump_cred_create(uid_t uid, gid_t gid, size_t ngroups, gid_t *groups) {