Commit graph

11 commits

Author SHA1 Message Date
Jorrit Herder
c0718054e9 Various fixes and improvements.
- fixed bug that caused IDLE to panic (irq hook inconsistency);
- kprintf() now accepts multiple arguments; moved to utility.c;
- prepare_shutdown() signals system processes with SIGKSTOP;
- phys_fill() renamed to phys_memset(), argument order changed;
- kmemset() removed in favor of phys_kmemset();
- kstrncpy() removed in favor of phys_copy();
- katoi, kstrncmp replaced by normal library procedure again;
- rm_irq_handler() interface changed (simply pass hook pointer);
2005-07-20 15:25:38 +00:00
Jorrit Herder
1d7bdd4ab1 *** empty log message *** 2005-07-19 15:01:47 +00:00
Ben Gras
f96645a4eb Fixed a bug in kstrncpy() that caused mayhem whenever the buffer to be
copied into was the same size as the source string - it will keep on
filling with zeroes forever. This was a signed/unsigned bug, fixed by
making the kstrncpy argument ssize_t instead of size_t. This bug was
triggered by Chris Young <teddga@earthlink.net>, by dazzling coincedence -
changing OS_VERSION into something with one more character (exactly the
same size as the buffer in the kinfo struct).

Also noticed that the kstrncpy() call didn't null-terminate the strings
if necessary, also fixed.
2005-07-13 14:46:11 +00:00
Jorrit Herder
a408699ce0 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.
2005-06-24 16:24:40 +00:00
Ben Gras
3bb4d191d7 Corrected buffer size calculation from MAX(bufsize,realsize)
to MIN(bufsize,realsize) while copying boot params.
2005-06-21 16:18:23 +00:00
Jorrit Herder
355a10864b Fixed various GCC compiler warnings for the kernel.
Only main() now gives a warning about the return type (GCC wants an int).
2005-06-21 10:47:46 +00:00
Jorrit Herder
e0a98a4d65 * Fixed bug relating to nested locking in interrupt handlers. The nested lock
caused interrupts to be reenabled (due to unlock), which caused a race. The
problems were especially visible on slower machines.
* Relocated free memory parsing to process manager. This saved quite some
code at the kernel level. Text size was reduced by about 650 bytes.
* Removed locks for updating the realtime in the clock's main loop and the
get_uptime function. Interrupts are no longer reentrant, so realtime is
immediately updated.
2005-06-17 09:09:54 +00:00
Jorrit Herder
0e2a7a9730 Kernel cleanup.
Reduced kernel size by 512KB by moving private buffer into cstart() function.
Replaced assertions with erroneous return values. Removed assertions relating
to isuserp(rp), since all processes should become user processes; system
processes are now treated similar to other processes.
2005-06-07 12:34:25 +00:00
Jorrit Herder
614f49b557 Fixed some comments and reorganized some code.
Fixed minor bug in notify() function.
2005-05-18 10:36:23 +00:00
Jorrit Herder
89ac678b9b *** empty log message *** 2005-04-29 15:36:43 +00:00
Ben Gras
9865aeaa79 Initial revision 2005-04-21 14:53:53 +00:00