Source-Changes-HG archive
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index][Old Index]
[src/trunk]: src/sys/rump/librump/rumpkern Provide a special rump_proxy_sysca...
details: https://anonhg.NetBSD.org/src/rev/b311bf84e223
branches: trunk
changeset: 758851:b311bf84e223
user: pooka <pooka%NetBSD.org@localhost>
date: Wed Nov 17 21:52:29 2010 +0000
description:
Provide a special rump_proxy_syscall for handling received proxy
syscalls and retire unused rump_syscall.
diffstat:
sys/rump/librump/rumpkern/rump.c | 18 +++++++++---------
1 files changed, 9 insertions(+), 9 deletions(-)
diffs (61 lines):
diff -r 0c77863781db -r b311bf84e223 sys/rump/librump/rumpkern/rump.c
--- a/sys/rump/librump/rumpkern/rump.c Wed Nov 17 21:50:34 2010 +0000
+++ b/sys/rump/librump/rumpkern/rump.c Wed Nov 17 21:52:29 2010 +0000
@@ -1,4 +1,4 @@
-/* $NetBSD: rump.c,v 1.198 2010/11/17 19:54:09 pooka Exp $ */
+/* $NetBSD: rump.c,v 1.199 2010/11/17 21:52:29 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.198 2010/11/17 19:54:09 pooka Exp $");
+__KERNEL_RCSID(0, "$NetBSD: rump.c,v 1.199 2010/11/17 21:52:29 pooka Exp $");
#include <sys/systm.h>
#define ELFSIZE ARCH_ELFSIZE
@@ -107,6 +107,8 @@
static struct vmspace sp_vmspace;
static bool iamtheserver = false;
+static int rump_proxy_syscall(int, void *, register_t *);
+
static char rump_msgbuf[16*1024]; /* 16k should be enough for std rump needs */
static void
@@ -195,7 +197,7 @@
.spop_lwproc_release = rump_lwproc_releaselwp,
.spop_lwproc_newproc = rump_lwproc_newproc,
.spop_lwproc_curlwp = rump_lwproc_curlwp,
- .spop_syscall = rump_syscall,
+ .spop_syscall = rump_proxy_syscall,
};
int
@@ -634,8 +636,8 @@
return 0;
}
-int
-rump_syscall(int num, void *arg, register_t *retval)
+static int
+rump_proxy_syscall(int num, void *arg, register_t *retval)
{
struct lwp *l;
struct sysent *callp;
@@ -646,11 +648,9 @@
callp = rump_sysent + num;
l = curlwp;
- if (iamtheserver)
- curproc->p_vmspace = &sp_vmspace;
+ curproc->p_vmspace = &sp_vmspace;
rv = sy_call(callp, l, (void *)arg, retval);
- if (iamtheserver)
- curproc->p_vmspace = vmspace_kernel();
+ curproc->p_vmspace = vmspace_kernel();
return rv;
}
Home |
Main Index |
Thread Index |
Old Index