Ben Gras [Fri, 8 Jul 2005 17:30:01 +0000 (17:30 +0000)]
kernel and servers send diagnostic messages to IS; IS sends them to TTY
and the new log driver if enabled.
new usyslogd is started from /usr/etc/rc. New device created by
MAKEDEV.sh. /var/log created by etc/mtree/minix.tree (on root for
now). Made select() slightly more generic, with less code duplication.
Ben Gras [Fri, 8 Jul 2005 17:23:44 +0000 (17:23 +0000)]
New log driver; buffers messages and makes them available to userland.
Added some fields in the generic device table to support this driver
using libdriver. Updated other drivers to fill these fields with nops
and NULLs.
Ben Gras [Fri, 8 Jul 2005 17:21:50 +0000 (17:21 +0000)]
usyslogd - microsyslogd that has a hard-coded configuration (read from
/dev/klog and write to /var/log/messages). It's written so that more
sources and outputs could be added easily though.
Ben Gras [Mon, 4 Jul 2005 15:20:46 +0000 (15:20 +0000)]
A "fix" for bug no. 2 is to check if the process slot has disappeared.
Not a really good solution (as it might not catch situations in which this
is caused by another bug), but the forrest of checks necessary might be worse
than this quick fix - because when looking for the cause, I found some other
cases in which the PM would panic as well. See info in bug 2 for details.
Another fix is to delay notification of PM by SYSTASK of signals delivered
internally until after the reply (e.g. of exec()), because the reply would
be messed up otherwise (receiving the notify instead of reply). This caused
SIGTRAP not to be delivered properly with traced processes.
Ben Gras [Fri, 1 Jul 2005 09:39:47 +0000 (09:39 +0000)]
Fix to check for RDTSC instruction (above 486), and call another timing
function instead if RDTSC is unavailable. This makes minix run on 486
again :) (presumably lower as well).
Jorrit Herder [Thu, 30 Jun 2005 15:55:19 +0000 (15:55 +0000)]
Rewrite of process scheduling:
- current and maximum priority per process;
- quantum size and current ticks left per process;
- max number of full quantums in a row allow
(otherwise current priority is decremented)
Ben Gras [Thu, 30 Jun 2005 13:04:57 +0000 (13:04 +0000)]
Added formatting fixes for larger numbers in fsck and df; made mkfs
test for devices larger than 4GB, so it won't try to test them (and print
a warning message), but it will write the FS.
Ben Gras [Tue, 28 Jun 2005 11:58:17 +0000 (11:58 +0000)]
Removed max-inode check from mkfs because of 32-bit inode numbers in V3
FS. Tested by mkfs -i 200000, fsck, file system creating with 200000
inodes, fsck again.
Ben Gras [Mon, 27 Jun 2005 11:59:36 +0000 (11:59 +0000)]
Made src belong to bin in release cp.
Made /usr/include belong to bin in mtree.
Fixed compiler warning in fs/pipe.c.
Added mdb (minix debugger) manual page.
Added ethernet config function in setup script.
Jorrit Herder [Fri, 24 Jun 2005 16:24:40 +0000 (16:24 +0000)]
Cleaned up process table structure: removed p_type, p_pendcount.
Removed stop sequence when MINIX is shut down.
Disabled send mask checks --- to be replaced by proper mechanism.
Fixed bug relating to 'shutdown -x'.
Simplified clock accounting of realtime.
Updated Makefiles for mkdept script.
Ben Gras [Wed, 22 Jun 2005 15:22:34 +0000 (15:22 +0000)]
Workaround for fishy situation that caused checksum on outgoing packets
to be broken in certain cases. (Seemingly when 2 short packets sent
back-to-back.) Buffer alignment seems to fix this ...
Ben Gras [Mon, 20 Jun 2005 14:53:13 +0000 (14:53 +0000)]
Added function read_cpu_flags() that returns current cpu flags as a
long. This is used to check for interrupts being disabled at the time
of a lock() call, if enabled in config.h. The number of times this
happens is then counted in the kinfo structure. These events (recursive
lockings) lead to nasty race conditions.
Jorrit Herder [Mon, 20 Jun 2005 14:23:31 +0000 (14:23 +0000)]
Updated function key mapping because of possible changes to NOTIFY.
The TTY driver now only notifies the IS server about function key event,
but does not tell which keys are pressed. The IS servers queries the TTY
driver to find out about this.
Ben Gras [Mon, 20 Jun 2005 09:35:23 +0000 (09:35 +0000)]
Fixed a few quirks in misc.c
. MAX used where it should've been MIN
. buffer byte too short
. inobvious use of & with && without parantheses
. funny length checking