Commit Graph

261 Commits

Author SHA1 Message Date
christos
1ec743232e kernel portion of clock_nanosleep() 2012-10-02 01:44:27 +00:00
christos
7bee3146e4 Add {send,recv}mmsg from Linux 2012-06-22 18:26:35 +00:00
christos
fae991ec2f Add a new type of syscall "EXTERN" which is meant for modules that live
outside the tree (in pkgsrc). Use it to define afssys (210) which has
been reserved for years, and make it autoload the "openafs" module.
2012-05-05 19:37:37 +00:00
joerg
3bd1fd2afe Add entry for _ksem_timedwait. 2012-03-08 21:55:45 +00:00
matt
a9cc3edeb9 Use void * instead of sa_upcall_t for sa_register (since sa_upcall_t is
going away).
2012-02-19 17:50:28 +00:00
matt
d1b4215da1 Make SA syscalls as COMPAT_60 2012-02-19 17:22:16 +00:00
rmind
510eed8079 Make SA calls obsolete (use stubs in kern case, as libc needs them for now). 2012-02-19 17:08:02 +00:00
martin
f8c7c04bbe Add a posix_spawn syscall, as discussed on tech-kern.
Based on the summer of code project by Charles Zhang, heavily reworked
later by me - all bugs are likely mine.
Ok: core, releng.
2012-02-11 23:16:15 +00:00
dholland
59b296daa7 Change the syscall API for quotas over to the new non-proplib one.
- struct vfs_quotactl_args -> struct quotactl_args
   - add sys/stdint.h to sys/quotactl.h for clean userland build
   - install sys/quotactl.h in /usr/include
   - update set lists for same
   - add new marshalling code in libquota
   - add new unmarshalling code in vfs_syscalls.c
   - discard proplib interpreter code in vfs_quotactl.c
   - add dispatching code for the 14 quotactl ops in vfs_quotactl.c
   - mark the proplib quotactl syscall obsolete
   - add a new syscall number for the new quotactl syscall
   - change the name of the syscall to __quotactl()
   - remove the decl of the old quotactl from quota/quotaprop.h
   - add a decl of the new quotactl to sys/quotactl.h
   - update the libc build
   - update ktruss
   - remove proplib marshalling code from libquota
   - update copy of syscall table in gdb ppc sources
   - hack rumphijack to accomodate new quotactl name (as I recall,
     pooka wanted such a name change to simplify something, but I
     don't really see what/how)

This change appears to require a kernel version bump for rumpish
reasons.
2012-02-01 05:34:38 +00:00
manu
5b61306f9b Add futimens(2) and part of utimnsat(2) 2011-08-17 07:22:33 +00:00
manu
9db30be448 First stage of support for Extended API set 2. Most of the think is
unimplemented, except enough of linkat(2) to hardlink to a symlink.

Everything new in headers is guarded #ifdef _INCOMPLETE_XOPEN_C063 since
some software (e.g.: xcvs in our own tree) will assume they can use openat(2)
when AT_FDCWD is defined. _INCOMPLETE_XOPEN_C063 will go away once support
will be completed.
2011-08-08 12:08:52 +00:00
drochner
2ac9241da8 make the data arguments of *setxattr(2) const, as in Linux
(is this an official NetBSD API or should it be COMPAT_LINUX only?)
2011-07-18 11:28:24 +00:00
christos
7823fd0964 - syscalls that takes socklen_t arguments should do so.
- add pipe2, dup3, paccept, kqueue1
2011-06-26 17:05:24 +00:00
pooka
41f5ebb8ea actually, revert previous for now. quotactl doesn't play with the
same rules as all the other compat functions.
2011-03-09 22:12:45 +00:00
pooka
bd56cf8b76 mark old quotactl rump too 2011-03-09 21:52:31 +00:00
bouyer
063f96f3c2 merge the bouyer-quota2 branch. This adds a new on-disk format
to store disk quota usage and limits, integrated with ffs
metadata. Usage is checked by fsck_ffs (no more quotacheck)
and is covered by the WAPBL journal. Enabled with kernel
option QUOTA2 (added where QUOTA was enabled in kernel config files),
turned on with tunefs(8) on a per-filesystem
basis. mount_mfs(8) can also turn quotas on.

See http://mail-index.netbsd.org/tech-kern/2011/02/19/msg010025.html
for details.
2011-03-06 17:08:10 +00:00
pooka
0aac2843ad Add syscall type NOERR which signals that a system call is STD but
does not return an errno the usual way.  The main use case is to
fix the posix_fadvise() rump stub (yes, posix_fadvise is a bit
special... bologna).

The list of NOERR syscalls currently matches the libc NOERR list
(and the libc Makefile can in the future be autogenerated from this
info).

Problem spotted by, *shocker*, the automated test runs, specifically
the posix_fadvise test.
2011-02-21 23:20:19 +00:00
pooka
ca1f523968 somehow i've missed preadv/pwritev from rump-relevant syscalls 2011-02-21 12:49:06 +00:00
christos
cae1901fc3 make syscalls match documentation as far as pid_t goes. 2011-01-31 00:05:29 +00:00
pooka
111bbbce9e Missed pselect50 in previous (file was open in editor ... d0h).
Add mknod50 and fhstat50 too.
2011-01-17 18:24:17 +00:00
pooka
39a698a4f3 Mark a few 5.0 COMPAT syscalls as RUMP now that it's possible 2011-01-17 16:21:40 +00:00
christos
3d70c4b47c implement sigqueueinfo 2011-01-10 04:39:18 +00:00
pooka
0061495240 rump posix_fadvise() 2010-11-11 14:47:41 +00:00
pooka
0d2a7de3b6 getcwd for rump 2010-09-07 17:10:08 +00:00
pooka
a50c905497 rump umask 2010-09-06 20:00:09 +00:00
pooka
16e1cb0b60 RUMP syscalls for kern_prot.c interfaces 2010-08-30 10:32:54 +00:00
pooka
13ce287a55 rump stubs for _ksem* 2010-06-10 19:09:03 +00:00
njoly
fe0d8c08a5 Rumpify pathconf(2)/fpathconf(2)
ok from pooka@
2010-06-04 16:32:00 +00:00
pooka
593dfe42a8 make get/setrlimit as rump-capable 2010-04-21 16:17:04 +00:00
pooka
773120876e Make lfs syscalls loadable. This nukes fs_lfs.h & #ifdef LFS.
(I don't mind if someone wants to go further and OBSOL them).
2010-03-02 19:34:26 +00:00
pooka
91ac00ac3a pipe +RUMP 2009-11-26 17:20:20 +00:00
pooka
024c040316 modctl +RUMP 2009-11-26 09:00:45 +00:00
pooka
39de73aae0 +fhopen, +fhstatvfs1 RUMP 2009-07-21 23:59:00 +00:00
rmind
7512d1e720 Make POSIX message queues a kernel module. 2009-07-19 02:50:44 +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
5e0d2571db mark a bunch of syscalls as RUMP 2009-03-28 16:33:40 +00:00
pooka
226a234960 make mount() a rump call 2009-03-19 09:08:35 +00:00
pooka
ddf9eb29c5 kqueue and kevent for rump 2009-03-18 17:51:17 +00:00
apb
0cc72e51ac Use "defopt MODULAR" in sys/conf/files, and #include "opt_modular.h"
in all kernel sources that use the MODULAR option.
Proposed in tech-kern on 18 Jan 2009.
2009-02-13 22:41:00 +00:00
pooka
89fa47c428 Tag a few more socket syscalls with RUMP:
recvmsg, sendmsg, recvfrom, getpeername, getsockname, sendto,
shutdown, socketpair
2009-01-26 12:20:05 +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
christos
87e24cb708 fix lutimes. 2009-01-11 19:40:38 +00:00
christos
461a86f9bd merge christos-time_t 2009-01-11 02:45:45 +00:00
pooka
3c61b47d93 RUMP some syscalls required by nfsd. 2008-11-26 15:01:17 +00:00
pooka
b5321c4efc document modular. no functional change. 2008-11-21 07:34:46 +00:00
ad
92ce8c6a3d Make the emulations, exec formats, coredump, NFS, and the NFS server
into modules. By and large this commit:

- shuffles header files and ifdefs
- splits code out where necessary to be modular
- adds module glue for each of the components
- adds/replaces hooks for things that can be installed at runtime
2008-11-19 18:35:57 +00:00
ad
e6a3385171 Make POSIX AIO loadable as a module. 2008-11-14 23:33:45 +00:00
ad
18e73e1ebe Replace semid_t with intptr_t. No function change. This is a libc/kernel
private interface and so the name change should not affect any third
party code.
2008-11-14 15:49:20 +00:00
ad
0b7375c9af Allow the POSIX semaphore code to be loaded as a module. 2008-11-12 14:32:34 +00:00
ad
0efea177e3 Remove LKMs and switch to the module framework, pass 1.
Proposed on tech-kern@.
2008-11-12 12:35:50 +00:00