#
0638b346 |
| 04-Apr-2007 |
pedro <pedro@openbsd.org> |
Don't remove the process from the threads queue in proc_zap() as that currently already happens in exit1(), okay art@
|
#
a4ad0792 |
| 03-Apr-2007 |
art <art@openbsd.org> |
Start moving state that is shared among threads in a process into a new struct. Instead of doing a huge rename and deal with the fallout for weeks, like other projects that need no mention, we will s
Start moving state that is shared among threads in a process into a new struct. Instead of doing a huge rename and deal with the fallout for weeks, like other projects that need no mention, we will slowly and carefully move things out of struct proc into a new struct process.
- Create struct process and the infrastructure to create and remove them. - Move threads in a process into struct process.
deraadt@, tedu@ ok
show more ...
|
#
29514732 |
| 15-Mar-2007 |
art <art@openbsd.org> |
Since p_flag is often manipulated in interrupts and without biglock it's a good idea to use atomic.h operations on it. This mechanic change updates all bit operations on p_flag to atomic_{set,clear}b
Since p_flag is often manipulated in interrupts and without biglock it's a good idea to use atomic.h operations on it. This mechanic change updates all bit operations on p_flag to atomic_{set,clear}bits_int.
Only exception is that P_OWEUPC is set by MI code before calling need_proftick and it's automatically cleared by ADDUPC. There's no reason for MD handling of that flag since everyone handles it the same way.
kettenis@ ok
show more ...
|
#
80673e30 |
| 23-Jun-2006 |
mickey <mickey@openbsd.org> |
consistantly count context switches on exit; miod@ ok
|
#
3cf89249 |
| 15-Jun-2006 |
miod <miod@openbsd.org> |
Nothing sets P_FSTRACE anymore, so remove all what's left of it.
|
#
f7cbf7b7 |
| 06-Apr-2006 |
mickey <mickey@openbsd.org> |
release kernel lock _after_ the emulation exit hook is called to protect possible free()s; tedu@ deraadt@ ok
|
#
73975ba7 |
| 20-Feb-2006 |
miod <miod@openbsd.org> |
Compile out more rthreads stuff unless option RTHREADS; discussed with a few, ok tedu@
|
#
53b721e7 |
| 13-Dec-2005 |
tedu <tedu@openbsd.org> |
make exiting actually work when a thread receives a signal. previously, the child and parent would deadlock in the kernel and be unable to exit. help with diagnosis from art@.
|
#
802bb6ac |
| 03-Dec-2005 |
tedu <tedu@openbsd.org> |
kernel support for threaded processes (rthreads). uses rfork(RFTHREAD) to create threads, which are presently processes that are a little more tightly bound together. several new syscalls added to f
kernel support for threaded processes (rthreads). uses rfork(RFTHREAD) to create threads, which are presently processes that are a little more tightly bound together. several new syscalls added to facilitate a userland thread library. all conditional on RTHREADS, currently disabled. ok deraadt
show more ...
|
#
158fb4f9 |
| 28-Nov-2005 |
jsg <jsg@openbsd.org> |
ansi/deregister. 'go for it' deraadt@
|
#
f38bed7f |
| 14-Sep-2005 |
kettenis <kettenis@openbsd.org> |
ptrace(2) following fork(2) ok miod@
|
#
9d08f8e5 |
| 26-Dec-2004 |
miod <miod@openbsd.org> |
Use list and queue macros where applicable to make the code easier to read; no change in compiler assembly output.
|
#
b1748765 |
| 04-Aug-2004 |
art <art@openbsd.org> |
hardclock detects if ITIMER_VIRTUAL and ITIMER_PROF have expired and sends SIGVTALRM and SIGPROF to the process if they had. There is a big problem with calling psignal from hardclock on MULTIPROCESS
hardclock detects if ITIMER_VIRTUAL and ITIMER_PROF have expired and sends SIGVTALRM and SIGPROF to the process if they had. There is a big problem with calling psignal from hardclock on MULTIPROCESSOR machines though. It means we need to protect all signal state in the process with a lock because hardclock doesn't obtain KERNEL_LOCK. Trying to track down all the tentacles of this quickly becomes very messy. What saves us at the moment is that SCHED_LOCK (which is used to protect parts of the signal state, but not all) happens to be recursive and forgives small and big errors. That's about to change.
So instead of trying to hunt down all the locking problems here, just make hardclock not send signals. Instead hardclock schedules a timeout that will send the signal later. There are many reasons why this works just as good as the previous code, all explained in a comment written in big, friendly letters in kern_clock.
miod@ ok noone else dared to ok this, but noone screamed in agony either.
show more ...
|
#
7aa7a280 |
| 22-Jul-2004 |
art <art@openbsd.org> |
SIMPLELOCK -> mutex for the lock around deadproc list. Also move the whole deadproc infrastructure to kern_exit, it's only used there.
miod@ ok
|
#
012ea299 |
| 13-Jun-2004 |
niklas <niklas@openbsd.org> |
debranch SMP, have fun
|
#
9d1260f9 |
| 27-May-2004 |
tedu <tedu@openbsd.org> |
make acct(2) optional with ACCOUNTING ok art@ deraadt@
|
#
e75dcc9a |
| 20-Mar-2004 |
tedu <tedu@openbsd.org> |
one proc.h is sufficient
|
#
a8f411c8 |
| 31-Dec-2003 |
millert <millert@openbsd.org> |
wait4(2) takes and returns pid_t, not int. OK deraadt@ and miod@
|
#
26a45e40 |
| 03-Aug-2003 |
millert <millert@openbsd.org> |
Implement the WCONTINUED flag to the wait(2) family of syscalls and the associated WIFCONTINUED macro as per 1003.1-2001. Adapted from FreeBSD. A minor amount of trickiness is involved here. The va
Implement the WCONTINUED flag to the wait(2) family of syscalls and the associated WIFCONTINUED macro as per 1003.1-2001. Adapted from FreeBSD. A minor amount of trickiness is involved here. The value for WCONTINUED is chosen in such a way that _WSTATUS(_WCONTINUED) == _WSTOPPED and the WIFSTOPPED macro has been modified such that WIFSTOPPED(_WCONTINUED) != _WSTOPPED. This means we don't need to add an extra check to the WIFSIGNALED and WIFSTOPPED macros. deraadt@ OK.
show more ...
|
#
27e97305 |
| 21-Jul-2003 |
tedu <tedu@openbsd.org> |
remove caddr_t casts. it's just silly to cast something when the function takes a void *. convert uiomove to take a void * as well. ok deraadt@
|
#
abc163f4 |
| 21-Jun-2003 |
tedu <tedu@openbsd.org> |
add exec/fork/exit hooks per process for compat emulations. use them to correctly emulate linux brk. update to TNF copyright in linux_exec.c.
from netbsd, mostly from a diff by Kurt Miller in pr3318
add exec/fork/exit hooks per process for compat emulations. use them to correctly emulate linux brk. update to TNF copyright in linux_exec.c.
from netbsd, mostly from a diff by Kurt Miller in pr3318. this should fix java. no regressions in testing by kurt and sturm@. be prepared for "proc size mismatch" -- recompile ps and friends. ok deraadt@
show more ...
|
#
29295d1c |
| 02-Jun-2003 |
millert <millert@openbsd.org> |
Remove the advertising clause in the UCB license which Berkeley rescinded 22 July 1999. Proofed by myself and Theo.
|
#
0f319179 |
| 29-Oct-2002 |
art <art@openbsd.org> |
No need to free the address space in exit1(), we'll do that in the reaper. That gives us the advantage of not being the active address space when freeing the mappings in the pmap, which can lead to e
No need to free the address space in exit1(), we'll do that in the reaper. That gives us the advantage of not being the active address space when freeing the mappings in the pmap, which can lead to expensive TLB flushes on some architectures.
plus some minor cleaning.
show more ...
|
#
e2dd09c6 |
| 16-May-2002 |
provos <provos@openbsd.org> |
systrace facility, used to enforce and generate policies for system calls okay deraadt@
|
#
c4071fd1 |
| 14-Mar-2002 |
millert <millert@openbsd.org> |
First round of __P removal in sys
|