Ben Gras [Fri, 21 Oct 2005 11:13:17 +0000 (11:13 +0000)]
. minor formatting fixes (spaces, newlines) of messages
. check pids for being > 0 before kill()ing them (0 and negative
numbers have special meanings that shouldn't be used)
Ben Gras [Fri, 21 Oct 2005 11:07:33 +0000 (11:07 +0000)]
. don't kill tty, send it messages on signals
. kill processes first, then tell fs to reboot (otherwise fs will have
exited its processes and be confused when they exit again)
Ben Gras [Thu, 20 Oct 2005 20:59:02 +0000 (20:59 +0000)]
. check for notify() from NONE (shouldn't happen any more)
. test for cleared process slots when checking processes on exiting
. clear process slot first, then do cleanup on exiting
Jorrit Herder [Thu, 20 Oct 2005 20:34:34 +0000 (20:34 +0000)]
New IPC error codes: ESRCDIED, EDSTDIED, ETRAPDENIED.
New getsysinfo type to get DS store contents from IS.
New Data Store (DS) server message types and arguments.
Jorrit Herder [Thu, 20 Oct 2005 20:31:18 +0000 (20:31 +0000)]
New Reincarnation Server functionality.
- service refresh: to cleanly stop and restart a server or driver
- binary exponential backoff: don't restart in a loop
Ben Gras [Thu, 20 Oct 2005 19:39:32 +0000 (19:39 +0000)]
Two 'dynamic driver' features in FS:
. When drivers disappear that have pending select()s, wake up
those user processes with EAGAIN so that they can retry their
select() and won't hang forever on it.
. When drivers re-appear and are mapped into the dmap, run through
the list of mounted filesystems and re-dev_open() every one (for
partition tables and such). This can't happen before the driver
has exec()ced itself, so processes that have fork()ed but not
exec()ced yet are marked as DMAP_BABY in the dmap table if they
are dmapped before they are execced. If that happens, the above
procedure happens after the exec(). If the exec() happens before
the dmapping, it (the dev_open()ing) happens right away.
Ben Gras [Tue, 18 Oct 2005 10:34:54 +0000 (10:34 +0000)]
printf() by kernel and servers now send messages to an array of processes,
OUTPUT_PROCS_ARRAY in <minix/config.h>, in that order, terminated by NONE.
log no longer forwards messages to tty itself. This leads to less funny
loops and more robust debug-message handling. Also the list of
processes receiving messages can easily be changed around or disabled by
editing the array (e.g. disable it by changing the array to { NONE }.).
Ben Gras [Mon, 17 Oct 2005 13:19:22 +0000 (13:19 +0000)]
A new panic that makes processes exit with PM knowing about it, instead
of sys_exit, so that PM functions (e.g. findproc) keep working properly,
and RS finds out about process deaths.
Ben Gras [Thu, 13 Oct 2005 12:48:43 +0000 (12:48 +0000)]
PM: added possibility to copy hole list from alloc.c to outside, for
misc.c to copy it away by getsysinfo
IS: prints out hole list + stats such as largest contiguous chunk
Ben Gras [Thu, 13 Oct 2005 12:45:09 +0000 (12:45 +0000)]
Moved 'struct hole' for memory holes from PM to <minix/type.h>; also
number of holes to sys_config.h, to make memory allocation data structure
visible from outside..