Source-Changes-HG archive
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index][Old Index]
[src/trunk]: src/sys/kern Skip one extra function in the rump syscall local p...
details: https://anonhg.NetBSD.org/src/rev/7abbfc963a05
branches: trunk
changeset: 758847:7abbfc963a05
user: pooka <pooka%NetBSD.org@localhost>
date: Wed Nov 17 21:47:11 2010 +0000
description:
Skip one extra function in the rump syscall local path and use
sy_call() directly from rump_syscalls.c.
diffstat:
sys/kern/makesyscalls.sh | 10 +++++++---
1 files changed, 7 insertions(+), 3 deletions(-)
diffs (29 lines):
diff -r fead1e36c7a7 -r 7abbfc963a05 sys/kern/makesyscalls.sh
--- a/sys/kern/makesyscalls.sh Wed Nov 17 20:19:25 2010 +0000
+++ b/sys/kern/makesyscalls.sh Wed Nov 17 21:47:11 2010 +0000
@@ -1,5 +1,5 @@
#! /bin/sh -
-# $NetBSD: makesyscalls.sh,v 1.102 2010/11/04 20:50:29 pooka Exp $
+# $NetBSD: makesyscalls.sh,v 1.103 2010/11/17 21:47:11 pooka Exp $
#
# Copyright (c) 1994, 1996, 2000 Christopher G. Demetriou
# All rights reserved.
@@ -225,12 +225,16 @@
printf " rumpclient_syscall(num, data, dlen, retval)\n" > rumpcalls
printf "#define rsys_seterrno(error) errno = error\n" > rumpcalls
printf "#define rsys_alias(a,b)\n#else\n" > rumpcalls
+ printf "#include <sys/syscallvar.h>\n\n" > rumpcalls
printf "#include <rump/rumpuser.h>\n" > rumpcalls
printf "#include \"rump_private.h\"\n\n" > rumpcalls
printf "static int\nrsys_syscall" > rumpcalls
printf "(int num, void *data, size_t dlen, register_t *retval)" > rumpcalls
- printf "\n{\n\tint rv;\n\n\trump_schedule();\n" > rumpcalls
- printf "\trv = rump_syscall(num, data, retval);\n" > rumpcalls
+ printf "\n{\n\tstruct sysent *callp = rump_sysent + num;\n" > rumpcalls
+ printf "\tint rv;\n" > rumpcalls
+ printf "\n\tKASSERT(num > 0 && num < SYS_NSYSENT);\n\n" > rumpcalls
+ printf "\trump_schedule();\n" > rumpcalls
+ printf "\trv = sy_call(callp, curlwp, data, retval);\n" > rumpcalls
printf "\trump_unschedule();\n\n\treturn rv;\n}\n\n" > rumpcalls
printf "#define rsys_seterrno(error) rumpuser_seterrno(error)\n" > rumpcalls
printf "#define rsys_alias(a,b) __weak_alias(a,b);\n#endif\n\n" > rumpcalls
Home |
Main Index |
Thread Index |
Old Index