christos
fa7190ea1a
more proc to lwp problems.
2005-12-12 02:51:07 +00:00
christos
95e1ffb156
merge ktrace-lwp.
2005-12-11 12:16:03 +00:00
tron
9ca15b486f
Fix problem in ioctl() handling in OSS audio emulation which caused
...
unintentional changes of the audio settings e.g. when running "kphone".
Patch submitted by George Michaelson on "tech-kern@NetBSD.org".
2005-12-08 19:19:14 +00:00
christos
0e0397d742
netbsd32_timevalp_t is not really a pointer.
2005-12-06 13:37:35 +00:00
christos
58b2cd40fa
remove conflict.
2005-12-05 15:17:18 +00:00
christos
9612f9a4de
untagle a bit.
2005-12-05 15:16:51 +00:00
kleink
cb3b376555
Sync with kern_time.c rev. 1.98:
...
- make settime take timespec.
- pass struct proc down so that we can log a detailed message.
2005-12-05 10:31:00 +00:00
christos
184ad089a7
- make settime take timespec.
...
- avoid wrapping of time in settime.
- pass struct proc down so that we can log a detailed message.
2005-12-05 00:16:33 +00:00
rpaulo
462d39494a
Remove the debugging printf left in linux_sys_getrlimit().
2005-11-30 11:36:22 +00:00
jdolecek
a2e3927e39
undo linux_sys_exit_group() change _again_ - please do not commit known
...
broken code
2005-11-29 22:31:59 +00:00
manu
35923ac2fc
Threads should not send a signal on exit.
2005-11-29 16:24:41 +00:00
thorpej
7d00e1aff3
Overhaul how TTY line disciplines are handled:
...
- Replace references to linesw[0] with a ttyldisc_default() function
that returns the default ("termios") line discipline.
- The linesw[] array is gone, replaced by a linked list.
- ttyldisc_add() and ttyldisc_remove() have been replaced by
ttyldisc_attach() and ttyldisc_detach().
- Things that provide line disciplines are now responsible for
registering those disciplines with the system. The linesw
structures are no longer declared in tty_conf.c
- Line disciplines are now refcounted; a lookup causes a reference to
be held. ttyldisc_release() releases the reference. Attempts to
detach an in-use line discipline result in EBUSY.
- Fix function signature lossage in if_sl.c, if_strip.c, and tty_tb.c
that was masked by the old tty_conf.c
- tty_init() is no longer necessary; delete it and its call from main().
2005-11-27 05:35:52 +00:00
manu
2697809839
To awake all processes sleeping on a futex, set maximum value to 0x7fffffff
...
instead of -1 (0xffffffff): the value is signed...
2005-11-23 22:38:46 +00:00
manu
c06b3dd8a8
Remove a debug printf
2005-11-23 22:23:30 +00:00
manu
23cf341ea0
- Add Linux tkill and tgkill (partial emulation).
...
- Fix getrlimit on amd64
2005-11-23 16:14:57 +00:00
christos
c3ae1990ca
Regen
2005-11-17 17:09:05 +00:00
christos
7faedc67d3
need the non-compat version of shm.h too.
2005-11-17 17:07:03 +00:00
simonb
772f8208fc
Copyright maintenance - only include the copyrights from the original
...
sys/*.h files that were in the files at the time the old structures
were present.
2005-11-12 00:39:22 +00:00
chs
001ec1422b
include additional headers that are now needed.
2005-11-11 23:22:08 +00:00
jdolecek
95d0b66d28
undo the linux_sys_exit_group() change for now - complete CLONE_THREAD support
...
is necessary for this to work properly
2005-11-11 22:45:41 +00:00
christos
88056ee1bd
Move more compat stuff from sys.
2005-11-11 17:10:42 +00:00
tron
19c262ce51
Include "sys/ipc.h" to get definition of "ipc_perm14" structure.
...
This fixes the build of "pecoff_exec" LKM.
2005-11-11 11:59:53 +00:00
simonb
a21c456e2e
Call nanotime() directly, instead of doing the
...
microtime()/TIMEVAL_TO_TIMESPEC() dance.
2005-11-11 07:07:42 +00:00
christos
82eba32c06
need compat/sys/shm.h
2005-11-10 18:47:53 +00:00
christos
306385b2a5
regen.
2005-11-10 18:47:31 +00:00
christos
e2f2b17e31
add the new compat header.
2005-11-10 18:47:16 +00:00
christos
75fdf989ea
These two really don't need the new header.
2005-11-10 18:43:32 +00:00
christos
2a4a5534b4
Include new compat header.
2005-11-10 18:39:30 +00:00
christos
0b0496e3d5
move the compat code out of the sys file.
2005-11-10 18:36:20 +00:00
christos
65de380a95
More ipc support for linux; makes oracle work. From chuq and
...
jlrodriguez at terra dot es
2005-11-10 18:33:37 +00:00
manu
e75bcb9ebf
Fix build problem
2005-11-09 21:56:11 +00:00
manu
f98d5d856e
Improve Linux exit_group emulation by sending a SIGKILL to all other
...
processes in the group instead of letting them live. It would be better
to properly terminate them.
2005-11-09 14:56:50 +00:00
manu
f53c4d1d1e
Prevent integer overflow in timout calculation.
...
changed DEBUG_LINUX to DEBUG_LINUX_FUTEX so that we have less debug
messages on the console
2005-11-09 14:52:18 +00:00
manu
26222780eb
Correctly computes futex timeout.
2005-11-08 21:28:49 +00:00
manu
d72135b371
Include linux_machdep.h so that LINUX_UNAME_ARCH ges defined (fixes
...
uname emulation)
2005-11-07 14:17:45 +00:00
manu
a5d2387dbb
regen
2005-11-06 21:50:28 +00:00
manu
7505cb92a6
Back out sched_{set|get}affinity addition because it breaks the
...
build again on i386 now it is fixed for other archs (Tom's fix and
mine got in colision)
2005-11-06 18:16:31 +00:00
tron
0c24d80f02
Regen with correct RCS Ids.
2005-11-06 14:25:48 +00:00
manu
35f76b0ac2
ifdef out sched_{get|set}affinity for ports that don't use it yet. That
...
should fix build.
2005-11-05 23:44:25 +00:00
dogcow
b3b0932a5d
mirror manu's amd64 changes to implement linux sched_{seg,get}affinity;
...
the kernel and linux lkm now compile again.
2005-11-05 10:56:48 +00:00
manu
2ae48df4fc
regen
2005-11-05 08:11:30 +00:00
manu
0cf4b35fe6
Implement more of Linux futex(2)
2005-11-05 08:07:44 +00:00
manu
41455b2ed0
Implement Linux sched_{set|get}affinity
2005-11-05 08:06:58 +00:00
manu
67fcd6abf5
Fix build when LINUX_NPTL is not defined
2005-11-05 07:26:45 +00:00
manu
2cac35470c
Fix a messed up patch
2005-11-05 00:58:57 +00:00
manu
88a5eb33ed
Instead of ifdef'ing __amd64__ all the Linux NPTL stuff, introduce an
...
ifdef LINUX_NPTL.
Also implement SETTLS flag to Linux clone()
2005-11-05 00:47:26 +00:00
chs
df018c387b
make this compile on m68k by including sys/device.h explicitly.
...
on other platforms it's apparently included implicitly, probably through cpu.h.
2005-11-04 17:00:43 +00:00
manu
b72e0d5382
Fix machine name returned by uname on Linux
2005-11-04 16:58:14 +00:00
manu
78ad642708
regen
2005-11-04 16:57:03 +00:00
manu
e7609e6478
Implement Linux futex ang gettid
2005-11-04 16:54:11 +00:00
manu
3b8100b96a
register_t is not an int on amd64
2005-11-04 16:52:51 +00:00
manu
e1c0c1c9dd
Implement Linux futex and gettid system calls for amd64
2005-11-04 16:51:56 +00:00
manu
0a3dbc01d5
build fix
2005-11-04 16:49:55 +00:00
manu
b7ba0ebc16
Fix pipe linux emulation on amd64
2005-10-31 18:00:30 +00:00
manu
5d2a593dcd
build fix
2005-10-31 17:58:07 +00:00
chs
d17f6e14bc
add support for the linux PROT_GROWS{DOWN,UP} mprotect() flags.
...
fixes PR 30008.
2005-10-30 16:25:50 +00:00
cube
75d561e358
Move prototypes for siginfo32 to/from siginfo converters at the right
...
place.
2005-10-24 15:28:09 +00:00
christos
6f981830a9
PR/31905: Wolfgang Stukenbrock: Termios ioctls TIOCMBIC and TIOCMBIS missing
...
in linux emulation code
2005-10-24 12:58:34 +00:00
cube
fc1218444f
Regen (kqueue, kevent).
2005-10-23 01:34:33 +00:00
cube
97e4d77453
- Split sys_kevent into kevent1 so that it can be used by COMPAT_NETBSD32
...
code.
- To achieve COMPAT_NETBSD32 compatibility, introduce a parameter to
kevent1 that points to functions that do the actual copyin/copyout
operations. This is similar to what was done in FreeBSD by Paul Saab.
- Add the COMPAT_NETBSD32 definitions and hooks.
2005-10-23 01:33:32 +00:00
cube
388b97e039
Implement a few changes needed to properly resolve PR#30924, as
...
discussed in the PR.
- introduce sys/timevar.h to hold kernel-specific stuff relevant to
sys/time.h. Ideally, timevar.h would contain all (or almost) of the
#ifdef _KERNEL part of time.h, but that's a pretty big and tedious
change to make. For now, it will contain only the prototypes I
introduced when working on COMPAT_NETBSD32.
- split copyinout_t into copyin_t and copyout_t, it makes prototypes more
explicit about the meaning of a given argument. Suggested by yamt@.
- move copyinout_t definition in sys/time.h to systm.h as copyin_t and
copyout_t
- make everything uses the new types and include the proper headers at
the proper places.
2005-10-23 00:09:14 +00:00
christos
78063c9188
regen.
2005-10-20 15:35:42 +00:00
christos
0270612ce7
Conditionalize the sigreturn syscall inclusion; from Patrick Welche
2005-10-20 15:35:25 +00:00
christos
e780c5edaf
regen
2005-10-18 19:52:07 +00:00
christos
8fc452caf8
add the missing %% that confused joerg and the parser.
2005-10-18 19:51:47 +00:00
joerg
5e74202601
Regen.
2005-10-18 19:08:51 +00:00
joerg
39fcee12fe
sys_uselib is needed by COMPAT_LINUX for EXEC_AOUT. Since it doesn't get
...
build when EXEC_AOUT is not defined, the syscalls.master entry has to be
conditionalized. Alpha did so already, so let the other archs catch up
with it.
Go-on: christos
2005-10-18 18:37:44 +00:00
chs
ffd3aa297e
make the previous apply only to x86_64.
2005-10-07 14:46:04 +00:00
chs
26a2ca0397
add __attribute__((packed)) to struct netbsd32_stat13. the alignment of
...
64-bit values is annoying in the x86 world: they require 64-bit alignment
in 64-bit mode but only 32-bit alignment in 32-bit mode.
2005-10-07 14:40:06 +00:00
manu
bc210edac8
Fix COMPAT_DARWIN build. This closes PR#31336
2005-10-03 17:11:25 +00:00
he
c6c2d9e696
Suddenly these need explicit inclusion of <sys/socket.h>; they use
...
the MSG_OOB and AF_LINK symbols (among others). Fixes build problem.
2005-09-28 06:40:15 +00:00
chs
8a6025c821
this needs stuff from compat/sys/siginfo.h now, just include it here.
2005-09-27 15:09:04 +00:00
chs
1e20ffb8a1
regen
2005-09-27 15:07:54 +00:00
chs
ad1b7e8d5c
include "opt_compat_sunos.h", netbsd32_syscallargs.h wants it.
2005-09-27 15:07:40 +00:00
chs
94be8205d7
make this compile again.
2005-09-27 14:37:06 +00:00
martin
3faf969174
Adapt to struct vfsops changes during the NFS export rototill.
2005-09-27 13:26:03 +00:00
jmmv
20ac358c50
Instead of trying to clear ufs_args' export member, zero the whole
...
structure so that we don't rely on that (renamed) field. Should fix
the build. Found by he@.
2005-09-24 21:44:15 +00:00
christos
a5d6ab9188
need compat/sys/socket.h
2005-09-24 21:34:35 +00:00
christos
91e84b20b0
make the siginfo converters static and comment out the one that is not used.
2005-09-24 21:34:18 +00:00
christos
6c8e87cff8
add struct forwards.
2005-09-24 21:33:48 +00:00
christos
dd40a9f6f6
include new compat siginfo header.
2005-09-24 17:29:47 +00:00
christos
5c03cd2255
more header cleanup.
2005-09-24 17:27:44 +00:00
christos
ca3a193432
factor out some of the osockaddr, omsghdr code.
2005-09-24 15:51:03 +00:00
chs
33359b3121
need to include sys/socket.h here now, sys/mount.h no longer does it for us.
2005-09-24 15:42:58 +00:00
christos
03ec972e58
maplen was uninitialized.
2005-09-19 02:47:15 +00:00
christos
d359ae5c43
MINSIGSTKSZ on linux is different depending on the platform and usually
...
smaller than ours.
2005-09-19 02:46:49 +00:00
christos
e20c28140a
Add compat signal headers.
2005-09-18 14:30:15 +00:00
yamt
a0bdf5ef81
irix_sys_swapctl: follow uvm_swap_stats changes.
2005-09-17 14:52:55 +00:00
yamt
209478cccf
protect p_nrlwps by sched_lock.
2005-09-17 14:35:51 +00:00
christos
29f3692018
add <compat/sys/signal*.h>
2005-09-16 17:09:52 +00:00
christos
c315b31f19
Fix a comment.
2005-09-15 03:00:16 +00:00
he
70fe9e01e8
This now needs <compat/sys/signal.h> to build.
2005-09-14 13:49:50 +00:00
he
87e3d67bce
This file now needs <compat/sys/stat.h> to build.
2005-09-14 13:49:27 +00:00
christos
ff66f5797e
need linux_syscallargs.h to compile, and remove inline function.
2005-09-13 22:08:21 +00:00
christos
c83d281198
Forgot to reverse the conditional test.
2005-09-13 16:35:24 +00:00
christos
58b392c018
make this compile again.
2005-09-13 03:23:09 +00:00
christos
6acf4b5ca8
add compat netbsd32 context.
2005-09-13 03:22:54 +00:00
christos
063b880cf0
compat code reorg.
2005-09-13 01:42:32 +00:00
christos
49110e63f0
Range checks are not optional. The omission of this one, allows the user
...
to corrupt the heap and/or crash the kernel (Christer Oeberg).
2005-09-12 22:17:49 +00:00
christos
6a2a989266
variable name mistake again.
2005-09-12 22:16:56 +00:00
christos
d9f67be7fe
- Avoid overflow by checking the count argument (Christer Oeberg).
...
- While I am here, don't leak fds either.
2005-09-12 20:54:38 +00:00
jmmv
ec93365612
Initial addition of tmpfs, an efficient memory file-system. This project
...
was developed as part of Google's Summer of Code 2005 program. This
change adds the kernel code, the mount_tmpfs utility, a regression test
suite and does all other related changes to integrate these.
The file-system is still *experimental*. Therefore, it is disabled by
default in all kernels. However, as typically done, a commented-out
entry is added in them to ease its setup.
Note that I haven't commited the required mountd(8) changes to be able
to export tmpfs file-systems because NFS support is still very unstable
and because, before enabling it, I'd like to do some other changes.
OK'ed by my project mentor, William Studenmund (wrstuden@).
2005-09-10 19:20:48 +00:00
rpaulo
257017665e
Add a SYSCTL_SETUP_PROTO() so that it compiles fine in the lkm.
2005-09-02 14:34:00 +00:00
he
eb89cd94e9
Now that <ufs/ufsmount.h> includes <ufs/extattr.h>, we also need
...
<sys/vnode.h> and <sys/vnode_if.h> to bring the definition of struct
vop_getextattr_args into scope. Fixes build problem for arc.
2005-08-31 16:01:56 +00:00
he
54e6da6105
Change from using sys___{,f,l}stat13() to sys___{,f,l}stat30() and
...
associated data structures, following the change to 64-bit inodes.
2005-08-22 10:57:04 +00:00
yamt
0ed4057082
linux_machdepioctl: remove duplicated FILE_USE/UNUSE.
2005-08-21 13:13:50 +00:00
kent
868a42c866
fix a compilation problem on NetBSD/amd64
2005-08-20 15:02:36 +00:00
yamt
e4ab81774d
compat_30_sys_getdents: netbsd 1.2 -> 3.0 in comments/messages.
2005-08-19 13:17:37 +00:00
yamt
34dab5e58c
compat_30_sys_getdents: don't leak kernel stack garbage to userland.
2005-08-19 13:16:56 +00:00
christos
4ce7529a64
change a hard-coded 0xf to _DIRENT_ALIGN (thanks yamt)
2005-08-19 06:01:00 +00:00
christos
b041fac92d
Fix lossage I created with the 64 bit ino_t change.
2005-08-19 04:24:38 +00:00
christos
758a209d23
64 bit inode changes.
2005-08-19 02:03:49 +00:00
christos
c0ee8a4184
Fix systeminfo.
...
1. return length is the string length even if the string would not fit.
2. add SI_ISALIST
3. on 32 bit emulation, don't return sparc64 as the arch!
2005-07-28 03:50:52 +00:00
cube
ae35d4a4e9
Regen (__sigtimedwait(2)).
2005-07-23 22:04:12 +00:00
cube
73fe747f11
Implement __sigtimedwait(2).
2005-07-23 22:03:45 +00:00
cube
a6b803a79f
Constify conversion functions.
2005-07-23 21:51:29 +00:00
cube
21472d491b
Regen (timer_create(2) and friends).
2005-07-23 18:57:07 +00:00
cube
23a1110cbd
Implement the timer_create(2) family of syscalls.
2005-07-23 18:56:15 +00:00
cube
ee24060ae4
Remove duplication of code for netbsd32_wait4() by using stackgap(9).
2005-07-22 22:46:29 +00:00
cube
606552e84c
Rework sunos32_execv{,e} after removal of netbsd32_execve2.
...
XXX COMPAT_SUNOS32 needs a SUNOS32PTR64() macro.
2005-07-13 12:49:32 +00:00
cube
86f97cc446
Do the CHECK_ALT_EXIST dance again in netbsd32_execve(). It was lost in
...
previous commit.
2005-07-13 11:55:19 +00:00
cube
e13e6c14c7
netbsd32_execve2() doesn't exist anymore.
2005-07-13 11:53:57 +00:00
christos
00a78ed413
Delete define for sunos_syscall_intern.
2005-07-12 22:45:11 +00:00
martin
e14ba58310
When returning 64bit values (from netbsd32_lseek) fix up the return
...
value vector (of 32bit values, most likely) via a MD macro.
2005-07-12 15:06:17 +00:00
cube
e937141b42
Regen (*xattr(2)).
2005-07-12 07:46:19 +00:00
cube
728e5e01bd
Add the *xattr(2) family of syscalls. Just like the *extattr(2) family,
...
they're waiting for an actual FS back-end to be tested, but are still
straightforward enough.
2005-07-12 07:45:34 +00:00
cube
0477abe883
Regen (rasctl(2)).
2005-07-11 20:18:52 +00:00
cube
241e7db4d5
Add rasctl(2). Thanks to the regression tests for that syscall, I was able
...
to discover the bugs in netbsd32_setitimer() and netbsd32_execve().
2005-07-11 20:18:05 +00:00
cube
355bcba766
Split sys_execve() and add execve1() that does most of the work, and takes
...
as an argument a function that will retrieve an element of the pointer
arrays in user space. This allows COMPAT_NETBSD32 to share the code for
the emulated version of execve(2), and fixes various issues that came from
the slow drift between the two implementations.
Note: when splitting up a syscall function, I'll use two different ways
of naming the resulting helper function. If it stills does
copyin/out operations, it will be named <syscall>1(). If it does
not (as it was the case for get/setitimer), it will be named
do<syscall>.
2005-07-11 20:15:26 +00:00
cube
08fd92bac5
Split sys_getitimer and sys_setitimer to make it possible to share the
...
relevant code with the COMPAT_NETBSD32 version, and make the latter use
the new functions.
This fixes netbsd32_setitimer() which had drifted from the native syscall
and did not work properly anymore.
2005-07-11 19:50:42 +00:00
christos
25e2fae9e9
Add a sunos_machdep include file to deal with MD implementations of
...
sunos_syscall_intern.
2005-07-11 13:14:49 +00:00
christos
dac018add9
More syscall_intern lossage.
2005-07-10 16:45:33 +00:00
christos
24d0f10c0f
define sunos_syscall_intern now that sparc needs it.
2005-07-10 16:40:49 +00:00
cube
0057da6efa
NOFOLLOW should be passed to NDINIT() instead of FOLLOW for lstat(2).
...
Reported by Martin Husemann.
2005-07-10 16:34:53 +00:00
cube
4a8942e74c
Regen.
2005-07-10 14:32:35 +00:00
cube
7e3a28a419
Add support for fsync_range(2).
2005-07-10 14:32:16 +00:00
cube
c6a5f27efa
Regen.
2005-07-10 11:29:35 +00:00
cube
b01a57e4ce
Implement __clone(2).
2005-07-10 11:28:58 +00:00
cube
91598566dc
Report changes from sys_wait4().
2005-07-10 11:28:03 +00:00
christos
ecc4f71237
define syscall again.
2005-07-10 04:23:30 +00:00
christos
4d0656f353
include the _32 flavor of the machdep file too.
2005-07-10 00:56:19 +00:00
christos
6667cfbdab
We have syscall_intern now.
2005-07-10 00:56:01 +00:00
christos
f1461c7e8a
No point in declaring syscall_intern and syscall in a zillion places.
2005-07-10 00:45:52 +00:00
cube
16e20b37d6
Regen.
2005-07-09 22:40:34 +00:00
cube
57017881b4
Implement pselect(2) and pollts(2).
2005-07-09 22:40:13 +00:00
cube
0056ee71b1
Make netbsd32_select() use selcommon() instead of a gross copy/paste of
...
the old sys_select() code.
2005-07-09 21:58:09 +00:00
cube
0d4567cd91
Regen.
2005-07-08 22:22:19 +00:00
cube
01f1f7ce7d
Add mlockall(2) and munlockall(2).
2005-07-08 22:21:43 +00:00
cube
e1c5d71d3d
Regen
2005-07-08 21:40:26 +00:00
cube
dfc332d6df
Implement the extattr(3) family of syscalls.
...
XXX However, those remain untested as there are currently no backend for
XXX extattr(9) in NetBSD.
2005-07-08 21:39:39 +00:00