pooka
c86a7bcf7c
Fill syscallnames up to nsysent so that n<nsysent has a non-hyperspace
...
string mapping.
2010-12-30 11:42:53 +00:00
pooka
b991c38551
Skip one extra function in the rump syscall local path and use
...
sy_call() directly from rump_syscalls.c.
2010-11-17 21:47:11 +00:00
pooka
c099830b29
Create rump_syscalls.c in two flavours: one which can be compiled
...
standalone as the clientside and one which expects to be compiled
into the rump kernel.
2010-11-04 20:50:29 +00:00
pooka
3c0f9a592b
apply "shut up, lint" for syscallargs.h
2010-11-04 17:02:34 +00:00
pooka
8553c5887b
Align comment column in output, no functional change.
2010-11-01 16:21:29 +00:00
pooka
5c6beee9f6
Use the generally more useful funcalias for rump syscalls.
2010-08-30 10:24:04 +00:00
pooka
7f9f73897e
Include <rump/rump_syscalls_compat.h> from rump_syscalls.h. This
...
file will contain compat defs which are not autogenerated.
2010-07-19 15:25:47 +00:00
njoly
a00a76ca8d
Add multiple inclusion protection to rump_syscalls.h.
2010-05-17 12:35:20 +00:00
pooka
14d288df20
_RUMPKERNEL -> _KERNEL
2010-05-11 20:09:11 +00:00
pooka
6ec71a1c75
Use sys_nomodule for modular rump system calls so that they can be
...
autoloaded.
2010-04-27 10:57:46 +00:00
pooka
e867c34ab2
Make is possible to add extra output at the top of syscallargs.h.
...
Use this feature to stick sys/mount.h in there.
2010-03-02 19:33:12 +00:00
skrll
e359b65038
Check for dev_t and time_t arguments and mark them as 64bit.
2010-01-05 15:23:32 +00:00
matt
dfa7467a6e
Pullup from matt-nb5-mips64.
...
For each syscall, add a flag for the return value or an argument indicating
that it is a 64-bit argument. Also include the number of 64-bit arguments.
In theory this could get most of the code in compat/netbsd32/netbsd32_netbsd.c
but not at the moment due to multiply defined structures.
2009-12-13 04:47:45 +00:00
pooka
baffc0cbae
typo in comment (it actually breaks the script totally. i wish
...
more typos in comments were as effective)
2009-11-26 17:23:48 +00:00
pooka
67ff6315cd
Add rump support for the special handling required by pipe(2).
2009-11-26 17:19:54 +00:00
pooka
a91020162b
Instead of a single register_t as the retval of rump syscalls,
...
use an array of two. No functional change ... yet.
2009-11-26 16:34:24 +00:00
pooka
0d8bdf6131
For varargs syscalls, create rump prototypes which match the regular
...
system call counterparts, e.g.:
open(const char *, int, mode_t) -> open(const char *, int, ...)
2009-10-13 21:54:29 +00:00
pooka
6c68c84345
Use argname PAD to signal that an argument is used only for padding
...
and not part of the C interface. Use this information for rump
syscalls to generate syscall interfaces without the extra parameter.
2009-05-15 15:51:27 +00:00
pooka
500fdd36a7
In addition to off_t alignment, check for dev_t and time_t too
...
(we don't currently have any syscalls passing time_t, though)
2009-05-15 14:52:47 +00:00
pooka
2941a7af6e
Include some headers to make rump_syscalls.h self-contained.
...
(not strictly correct wrt portability, but there are bigger fish
to saltgrill in that area)
2009-03-29 07:56:19 +00:00
pooka
0ef29cbdba
Rename rump argument marshalling structure variable to "callarg" to
...
avoid collision with system calls which use "arg".
2009-03-18 17:27:04 +00:00
pooka
b50bd8632e
Instead of linking rump system call entry points directly to the
...
backend, perform all calls through a syscall table. This makes it
possible to make system calls to non-local rump kernels.
(requires a bit support code. it's written but quite messy currently)
2009-02-20 17:56:36 +00:00
pooka
3e656734b8
cosmetic: don't print empty line at end of init_sysent.c
2009-02-14 16:21:23 +00:00
pooka
06abc8c3f9
Remove debug print -- this is what happens when there's several
...
hours between implementation and commit.
2009-01-23 19:29:38 +00:00
pooka
c7e5a8be4e
Remove the "int *error" parameter from rump syscalls. Instead use
...
rumpuser_seterrno() to set the errno for the caller. This makes
the difference between real and rump syscalls way less intrusive
in calling code.
2009-01-23 19:27:18 +00:00
pooka
32713ca49c
Generate local prototypes in rump_syscalls.c and disallow using
...
the rump_syscalls.h interface from inside the rump kernel.
2009-01-14 19:40:30 +00:00
pooka
a9a2ce837b
Convert the syscalls.master to a format from which it is easier
...
to parse and generate the compat name and basename (e.g. __stat50
and stat). Use this to autogenerate __RENAME()'s to the rump_syscalls
header so that they can be called e.g. rump_sys_socket() instead
of rump_sys___socket30().
2009-01-13 22:27:43 +00:00
pooka
71ef2103a7
Print delimiters around expected string in parse error message.
2009-01-13 16:29:19 +00:00
pooka
b2acbf4328
fix error message: expecting (, not )
2009-01-13 16:25:43 +00:00
pooka
786ff94e12
<rump/rump_syscalls.h>, not "rump_syscalls.h"
2008-11-16 18:40:13 +00:00
ad
119366618e
Atomic insertion/removal of groups of system call vectors at runtime with
...
a basic facility for rollback.
Proposed on tech-kern@.
2008-11-12 14:29:31 +00:00
pooka
3a64aae825
Fix previous: weak symbols work so much better if they are exported
...
from the object as weak symbols...
There's also something to be said about "cosmetic" tweaks after
testing, but I do think I'll bother.
2008-10-13 18:16:33 +00:00
pooka
cf05fbf706
Weak alias all rump system calls to rump_enosys()
2008-10-13 16:25:12 +00:00
pooka
23bef54996
For rumpsyscalls, properly return -1 in case of error.
2008-09-07 19:27:58 +00:00
apb
7cb9e72bbb
Avoid using \$ in an awk script. Instead, store '$NetBSD$'
...
in an awk variable and interpolate it where needed.
Based on the patch by Martin Husemann in PR 38766.
2008-07-23 21:17:25 +00:00
ad
30abe39468
- Retire SYCALL_MPSAFE. With the exceptions of darwin and irix emulations,
...
all system calls are now MPSAFE.
- Remove unneeded acquire/release of kernel_lock.
2008-04-24 11:51:18 +00:00
christos
4897e6c085
bring some stuff from time_t=64...
...
- add sysalign parameter to syscalls.conf
- add compat_50
2008-03-22 15:11:01 +00:00
njoly
d5bb355fe9
Handle rumpcalls/rumpcallshdr differently by always defining a default
...
value, which can be overwritten with syscalls.conf defines (just like
sys_nosys).
This fix a problem where rump awk variables are set to 0 value,
leading to the creation of an unexpected file with that name.
ok by pooka.
2008-03-18 12:36:15 +00:00
pooka
f2976c3905
Generate syscalls entry points which can be called directly without
...
going through a syscall trap. These are currently useful for rumps.
As all the standard syscalls are not compiled into librump, mark
relevant ones with RUMP in syscalls.master. To do e.g. a mkdir
"system call" from a rump, one would call
rump_sys_mkdir("/dir", mode, &eval);
where the last value represents something to store errno into.
2008-03-11 22:50:10 +00:00
njoly
fcf1e44d76
Do not hardcode sys_stub to the string "sys_nosys" for the not ignored
...
case. Just use the corresponding variable instead, to allow emulation
to use their own defined value.
2008-03-10 14:06:46 +00:00
martin
a032b8dad3
Add a new syscall type IGNORED which just calls nullop (always succeeds
...
and does nothing).
2008-02-24 12:51:42 +00:00
yamt
80d10710d5
check off_t alignment.
2008-01-28 10:31:37 +00:00
dsl
7e2790cf6f
Convert all the system call entry points from:
...
int foo(struct lwp *l, void *v, register_t *retval)
to:
int foo(struct lwp *l, const struct foo_args *uap, register_t *retval)
Fixup compat code to not write into 'uap' and (in some cases) to actually
pass a correctly formatted 'uap' structure with the right name to the
next routine.
A few 'compat' routines that just call standard ones have been deleted.
All the 'compat' code compiles (along with the kernels required to test
build it).
98% done by automated scripts.
2007-12-20 23:02:38 +00:00
dsl
84e8b2869e
Support "NOARGS INDIR" for compat_mach.
2007-11-10 13:22:11 +00:00
dsl
f4311cf9b6
Generate normal prototypes (etc) for INDIR calls (sys_syscall and sys___syscall)
...
just flag the entries as SYCALL_INDIRECT.
2007-11-09 14:54:13 +00:00
christos
3b5b073fd2
protect sys/syscall.h properly against multiple inclusion and make the
...
names of the protection macros consistent.
2005-12-03 17:04:36 +00:00
perry
aaec764348
get rid of trailing spaces in the "created from" line (constructed by
...
stripping the $s from $NetBSD$ in the source file.)
2005-02-26 23:32:31 +00:00
jdolecek
ca7fc04a65
use 'have_toupper' variable for awk toupper() function existence test, rather
...
than 'isgawk' - e.g. nawk has toupper() too
2004-09-12 11:24:15 +00:00
lukem
66ff0c053c
Rename LIBCOMPAT* -> SYSLIBCOMPAT*, now that <bsd.own.mk> provides LIBCOMPAT.
...
Fixes kernel link problem noted by Sebastien Erard.
2004-07-31 00:55:51 +00:00
christos
a474dc2106
Keep track of which prototypes we declared already so that we don't
...
declare them again.
2003-09-30 20:34:28 +00:00