Commit graph

2463 commits

Author SHA1 Message Date
Ben Gras c628f24bc2 moved stacktrace to sysctl, as vmctl is very privileged so can't
be used outside VM. IS code cleanup. added stacktrace feature to IS.
2009-01-27 12:54:33 +00:00
Ben Gras 3cc092ff06 . new kernel call sysctl for generic unprivileged system operations;
now used for printing diagnostic messages through the kernel message
   buffer. this lets processes print diagnostics without sending messages
   to tty and log directly, simplifying the message protocol a lot and
   reducing difficulties with deadlocks and other situations in which
   diagnostics are blackholed (e.g. grants don't work). this makes
   DIAGNOSTICS(_S), ASYN_DIAGNOSTICS and DIAG_REPL obsolete, although tty
   and log still accept the codes for 'old' binaries. This also simplifies
   diagnostics in several servers and drivers - only tty needs its own
   kputc() now.
 . simplifications in vfs, and some effort to get the vnode references
   right (consistent) even during shutdown. m_mounted_on is now NULL
   for root filesystems (!) (the original and new root), a less awkward
   special case than 'm_mounted_on == m_root_node'. root now has exactly
   one reference, to root, if no files are open, just like all other
   filesystems. m_driver_e is unused.
2009-01-26 17:43:59 +00:00
Ben Gras 4984a86f32 don't hang on disappearing filesystem. 2009-01-26 13:02:41 +00:00
Ben Gras b784e88026 prototype 2009-01-22 17:09:45 +00:00
Ben Gras 539192f4c3 must be unsigned for base+limit check to to work 2009-01-22 13:05:20 +00:00
Ben Gras 36c12c1251 package list sanity check 2009-01-20 15:49:42 +00:00
Ben Gras 0f41416100 minor cleanup, extra check 2009-01-20 15:47:00 +00:00
Ben Gras 723a756c14 reduce kernel buffer size. 2009-01-20 13:57:24 +00:00
Ben Gras 86e7e4828e sanity check function 2009-01-20 13:43:18 +00:00
Ben Gras 45ec30f6af mostly harmless sanity checks. 2009-01-20 13:43:00 +00:00
Ben Gras 6a267baeb8 simplification suggested by Mark Farnsworth 2009-01-15 14:42:40 +00:00
Ben Gras 36909196cf make bootinfo valid immediately 2009-01-14 08:56:20 +00:00
Ben Gras 4f08002c2c RS needs a bit more memory 2009-01-14 08:55:48 +00:00
Ben Gras ef2867de41 don't print if we're already printing to serial. 2009-01-14 08:54:17 +00:00
Ben Gras b4934f0e12 debug twiddle. 2009-01-14 08:52:50 +00:00
Ben Gras b450c33377 sometime this will be a new release. 2009-01-14 08:38:37 +00:00
Ben Gras 5cbcc11ed3 compile fix for new lock timings 2009-01-12 22:14:43 +00:00
Ben Gras 3ca00a926c don't produce kernel output if serial debug is on. 2009-01-11 23:47:03 +00:00
Ben Gras d5f978411e use #include name for servarname 2009-01-11 23:45:29 +00:00
Ben Gras 037f39767c debug msg 2009-01-09 21:47:04 +00:00
Ben Gras cd54beeb30 cprofile not conditional 2009-01-09 21:45:27 +00:00
Ben Gras c27008fbcc cprofile not conditional 2009-01-09 21:44:52 +00:00
Ben Gras e190ff9f84 cprofile always on 2009-01-09 21:42:36 +00:00
Ben Gras b82588848d cprofile always on; data type and definitions to include file 2009-01-09 21:40:29 +00:00
Ben Gras 628ed99101 CPROFILE wants this 2009-01-09 21:11:23 +00:00
Ben Gras 22d9444773 don't always time that 2009-01-09 20:58:35 +00:00
Ben Gras 7d48584659 profbuf syscall 2009-01-09 17:47:38 +00:00
Ben Gras ad87da99d3 bigger ramdisk for bigger binaries 2009-01-09 17:47:18 +00:00
Ben Gras 7606dc5f1f profiling reminder 2009-01-09 16:44:47 +00:00
Ben Gras ad03a650e6 timing library from kernel into library 2009-01-09 16:39:31 +00:00
Ben Gras 7740d0379c no longer in kernel 2009-01-09 16:35:25 +00:00
Ben Gras 128a0508c0 timing measurement code out of kernel and into library
(so other components can use it too)
2009-01-09 16:15:15 +00:00
Ben Gras 54b3f50b05 actually build and install zoneinfo. 2008-12-21 04:33:50 +00:00
Ben Gras 1943df25dd forget about bad block testing. 2008-12-21 04:26:41 +00:00
Ben Gras 523fdf2729 stopgap measure against elvis going nuts when files that are too large
are opened.
2008-12-21 04:01:01 +00:00
Ben Gras 0579810535 don't ignore the fact that scancodes are escaped.
if not understood explicitly, print diagnostic and 
ignore scancode.
2008-12-21 03:53:25 +00:00
Ben Gras 23a158b361 don't check senda() buffer if size is 0. 2008-12-21 03:46:42 +00:00
Ben Gras 203eb54a4c make space for first code and data pages if so configured. 2008-12-19 15:46:29 +00:00
Ben Gras d2757d4b73 debug buffer slightly usabler. 2008-12-19 15:19:42 +00:00
Ben Gras 866a4a667e phys addr arg of 0 must be possible for pt_writemap too (instead of meaning
unmap).
2008-12-19 13:29:12 +00:00
Ben Gras b740ff055f if serial output is enabled in the boot monitor, on the first serial line,
enable serial debug output in the kernel too.
2008-12-19 13:21:42 +00:00
Ben Gras 7fdc181d5f /boot/boot install helper script. 2008-12-19 12:52:45 +00:00
Ben Gras 8072ef5509 oops, shouldn't be on in svn. 2008-12-18 17:42:29 +00:00
Ben Gras 3121eec6bd . map text (kernel's and processes') in readonly
. map kernel in non-user
 . don't map in first pages of kernel code and data
   if possible

these first pages could actually be freed but as the
kernel isn't allowed to touch them either we can't reuse
them until VM has totally taken over page table management
and kernel doesn't rely on identity mapping any more.
2008-12-18 15:35:22 +00:00
Ben Gras f0000078c3 make kernel leave a page-sized gap in its code and data to not be
mapped in if so configured.
2008-12-18 14:30:55 +00:00
Ben Gras 834d9d34e8 Initialize deferred field. This seems to fix a hanging select() bug. 2008-12-17 14:20:08 +00:00
Ben Gras 2528a06954 bugfix for lance. works in vmware now. 2008-12-17 01:20:15 +00:00
Ben Gras 34d5401ed4 put put_vnode() back where it belongs! 2008-12-16 16:11:24 +00:00
Ben Gras 46ecfa2b5c syslib function for VMCTL_STACKTRACE 2008-12-16 14:42:32 +00:00
Ben Gras 710f44c4b8 added code for debugging pagefaults 2008-12-16 14:33:53 +00:00