#
e590eea0 |
| 24-Mar-2014 |
guenther <guenther@openbsd.org> |
The kernel isn't involved in times(3); <sys/times.h> should never be included there
|
#
86fea0ff |
| 24-Mar-2014 |
guenther <guenther@openbsd.org> |
Split the API: struct ucred remains the kernel internal structure while struct xucred becomes the structure for syscalls (mount(2) and nfssvc(2)).
ok deraadt@ beck@
|
#
7e499281 |
| 06-Apr-2013 |
tedu <tedu@openbsd.org> |
rthreads are always enabled. remove the sysctl. ok deraadt guenther kettenis matthew
|
#
f145108b |
| 01-Oct-2012 |
guenther <guenther@openbsd.org> |
Make groupmember() check the effective gid too, so that the checks are consistent when the effective gid isn't also a supplementary group.
ok beck@
|
#
0839b846 |
| 12-Apr-2012 |
mikeb <mikeb@openbsd.org> |
move accounting flags to struct process; idea and ok guenther
|
#
e6fd2ff8 |
| 10-Apr-2012 |
guenther <guenther@openbsd.org> |
Make the KERN_NPROCS and KERN_MAXPROC sysctl()s and the RLIMIT_NPROC rlimit count processes instead of threads. New sysctl()s KERN_NTHREADS and KERN_MAXTHREAD count and limit threads. The nprocs an
Make the KERN_NPROCS and KERN_MAXPROC sysctl()s and the RLIMIT_NPROC rlimit count processes instead of threads. New sysctl()s KERN_NTHREADS and KERN_MAXTHREAD count and limit threads. The nprocs and maxproc kernel variables are replaced by nprocess, maxprocess, nthreads, and maxthread.
ok tedu@ mikeb@
show more ...
|
#
6b6f3ef9 |
| 20-Feb-2012 |
guenther <guenther@openbsd.org> |
First steps for making ptrace work with rthreads: - move the P_TRACED and P_INEXEC flags, and p_oppid, p_ptmask, and p_ptstat member from struct proc to struct process - sort the PT_* requests i
First steps for making ptrace work with rthreads: - move the P_TRACED and P_INEXEC flags, and p_oppid, p_ptmask, and p_ptstat member from struct proc to struct process - sort the PT_* requests into those that take a PID vs those that can also take a TID - stub in PT_GET_THREAD_FIRST and PT_GET_THREAD_NEXT
ok kettenis@
show more ...
|
#
6bb85547 |
| 15-Oct-2011 |
guenther <guenther@openbsd.org> |
"TLS-lite": add kernel support for a per-thread userspace pointer, for pointing to the thread-control-block. Support for mapping this to the correct hardware register can be added as it's finished;
"TLS-lite": add kernel support for a per-thread userspace pointer, for pointing to the thread-control-block. Support for mapping this to the correct hardware register can be added as it's finished; start with support for amd64, sparc, and sparc64. Includes syscalls for getting and setting it (for a portable __errno implementation) as well as creating a new thread with an initial value for it.
discussed with miod@, kettenis@, deraadt@; committing to get the syscalls in with the impending libc bump and do further refinements in tree
show more ...
|
#
39ccaa81 |
| 25-Jul-2011 |
tedu <tedu@openbsd.org> |
two more syscall functions that should have returned int, not pid_t
|
#
4af3d307 |
| 07-Jul-2011 |
tedu <tedu@openbsd.org> |
effectively revert 1.44. we don't need the compat_43 syscall returns ever. getpid is smp safe again. ok guenther
|
#
e2590abe |
| 04-Apr-2011 |
guenther <guenther@openbsd.org> |
Move P_EXEC flag from struct proc to process, so that setpgid() will fail regardless of which rthread calls execve()
ok blambert@
|
#
bfb8af8f |
| 02-Apr-2011 |
guenther <guenther@openbsd.org> |
Move P_SUGID and P_SUGIDEXEC from struct proc to struct process, so that you can't evade the checks by doing the dirty work in an rthread
ok blambert@, deraadt@
|
#
207e4b38 |
| 26-Jul-2010 |
guenther <guenther@openbsd.org> |
Correct the links between threads, processes, pgrps, and sessions, so that the process-level stuff is to/from struct process and not struct proc. This fixes a bunch of problem cases in rthreads. Bas
Correct the links between threads, processes, pgrps, and sessions, so that the process-level stuff is to/from struct process and not struct proc. This fixes a bunch of problem cases in rthreads. Based on earlier work by blambert and myself, but mostly written at c2k10.
Tested by many: deraadt, sthen, krw, ray, and in snapshots
show more ...
|
#
debba2c8 |
| 01-Jul-2010 |
guenther <guenther@openbsd.org> |
Always identify threads with THREAD_PID_OFFSET, so that there's no way a kill() intended for a thread can result in a separate process getting the signal. ok tedu@ art@
|
#
d7939e92 |
| 29-Jun-2010 |
tedu <tedu@openbsd.org> |
remove the compat43 ifdef around some code. in effect, it's always been in compat mode and there's no harm continuing that way. ok dlg deraadt guenther miod thib
|
#
351c20c5 |
| 29-Jun-2010 |
tedu <tedu@openbsd.org> |
Eliminate RTHREADS kernel option in favor of a sysctl. The actual status (not done) hasn't changed, but now it's less work to test things. ok art deraadt
|
#
671e9c4f |
| 28-Jun-2010 |
guenther <guenther@openbsd.org> |
<sys/time.b> is for ftime(), which is just in libcompat and not the kernel, so stop including it in kernel .c files. "sure" deraadt@
|
#
13a24bb9 |
| 28-Jan-2010 |
guenther <guenther@openbsd.org> |
Make sure the process tree is is loop-free by forbidding ptrace() of a direct ancestor, closing a localhost DoS. As an exception, do permit ptrace() of pid 1 and have inferiors() stop climbing if it
Make sure the process tree is is loop-free by forbidding ptrace() of a direct ancestor, closing a localhost DoS. As an exception, do permit ptrace() of pid 1 and have inferiors() stop climbing if it hits that.
ok tedu@ hpux_compat suggestion from miod@
show more ...
|
#
a3c911ba |
| 14-Jan-2010 |
schwarze <schwarze@openbsd.org> |
fix typos in comments, no code changes; from Brad Tilley <brad at 16systems dot com>; ok oga@
|
#
41e92cfb |
| 02-Jun-2009 |
guenther <guenther@openbsd.org> |
ANSIfy noted by Jonathan ARMANI, ok blambert@
|
#
37b29d64 |
| 16-Dec-2008 |
guenther <guenther@openbsd.org> |
Move the functionality of psignal() to a new function ptsignal() that takes an additional argument "type" that indicates whether the signal is for the process, just a particular thread, or propagated
Move the functionality of psignal() to a new function ptsignal() that takes an additional argument "type" that indicates whether the signal is for the process, just a particular thread, or propagated to a thread because it's not caught or blocked. psignal() becomes a wrapper that does the first of those.
So that sys_kill() can tell apart signals for the process and signals for the process's original thread, the tid of the original thread is defined as its pid + THREAD_PID_OFFSET.
ok tedu@ art@ andreas@ kurt@ "better early than late" deraadt@
show more ...
|
#
c160d355 |
| 01-Nov-2008 |
deraadt <deraadt@openbsd.org> |
change all callers of enterpgrp() to pre-allocate a pgrp or session if it might be needed later -- before calling pfind(), so that enterpgrp() can operate without sleeping ok tedu
|
#
26220b84 |
| 31-Oct-2008 |
deraadt <deraadt@openbsd.org> |
accidental commit ... backout
|
#
270a889e |
| 31-Oct-2008 |
deraadt <deraadt@openbsd.org> |
kern_sysctl.c
|
#
2e81cdb6 |
| 14-Oct-2008 |
guenther <guenther@openbsd.org> |
Back-in; problems were apparently elsewhere. Put a reference count in struct process to prevent use-after-free if the main thread reaches the reaper ahead of some other thread in the process. Use th
Back-in; problems were apparently elsewhere. Put a reference count in struct process to prevent use-after-free if the main thread reaches the reaper ahead of some other thread in the process. Use the reference count to update the user process count correctly when changin real uid.
"please re-commit before something else nasty comes in" deraadt@
show more ...
|