Arun Thomas
3b37103fa3
Make the rtl8139 and orinoco drivers handle the system shutdown case
...
like other drivers. Also, some minor cleanups.
2009-04-22 12:42:37 +00:00
Ben Gras
2dd02cc560
mark pages whose refcount were >1 and drop to 1 and are
...
read/write writable in the pagetable right away instead of waiting for
a pagefault. minor optimization.
some a sanity check of SLAB-allocated pointers.
vm gets its own _exit and __exit like PM, so the stock (library) panic works.
2009-04-22 12:39:29 +00:00
Ben Gras
e0f3a5acf1
- enable ipc warnings by default
...
- ipc checking code in kernel didn't properly catch the
sendrec() to self case; added special case check
- triggered by PM using stock panic() - needs its own _exit()
reported by Joren l'Ami.
2009-04-17 13:46:37 +00:00
Ben Gras
e5717f7aef
clarify not found error message a bit.
2009-04-14 14:16:24 +00:00
Ben Gras
51596bc608
print who the message is from.
2009-04-02 11:56:50 +00:00
Ben Gras
73ee8b8b99
don't make susp_count negative.
2009-04-02 11:44:26 +00:00
Ben Gras
dc9a1bc30c
increment nph when printing physical regions; suggested by Guanqun Lu
2009-03-31 14:26:24 +00:00
Ben Gras
3bb80322d9
suppress more mostly-harmless messages.
2009-03-26 16:11:27 +00:00
Ben Gras
2d1c884e35
suppress these noisy, alarming messages.
2009-03-26 15:56:08 +00:00
Ben Gras
8af5f877bc
2009-03-04 17:44:34 +00:00
Ben Gras
3f6e061948
fix error check
2009-03-04 17:38:27 +00:00
Ben Gras
733d6c1ef6
help debugging cause of these sometimes odd calls.
2009-02-17 12:09:59 +00:00
Ben Gras
570b9cd753
Checking wrong inode pointer for refcount in mount (!)
2009-02-17 09:50:02 +00:00
Ben Gras
59e972f074
let drivers allocate memory at 64k physical boundary.
2009-02-12 12:26:08 +00:00
Ben Gras
b696823379
stingy stack.
2009-02-06 16:29:00 +00:00
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
539192f4c3
must be unsigned for base+limit check to to work
2009-01-22 13:05:20 +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
4f08002c2c
RS needs a bit more memory
2009-01-14 08:55:48 +00:00
Ben Gras
5cbcc11ed3
compile fix for new lock timings
2009-01-12 22:14:43 +00:00
Ben Gras
628ed99101
CPROFILE wants this
2009-01-09 21:11:23 +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
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
834d9d34e8
Initialize deferred field. This seems to fix a hanging select() bug.
2008-12-17 14:20:08 +00:00
Ben Gras
34d5401ed4
put put_vnode() back where it belongs!
2008-12-16 16:11:24 +00:00
Ben Gras
710f44c4b8
added code for debugging pagefaults
2008-12-16 14:33:53 +00:00
Ben Gras
e4e3995fb0
don't force vm to print to serial; don't kill processes when they
...
have 'bad' memory ranges (as it's the requestor's fault)
2008-12-11 17:36:33 +00:00
Ben Gras
70f1f28439
dynamic HZ, library stacktrace
2008-12-11 14:54:42 +00:00
Ben Gras
2024bf0bcf
. no more HZ
...
. let user processes query HZ
. no more custom panic()
2008-12-11 14:49:17 +00:00
Ben Gras
ccf70aa989
system_hz replaces HZ
2008-12-11 14:48:05 +00:00
Ben Gras
7d674f4b8e
no more HZ; less debugging statements
2008-12-11 14:47:48 +00:00
Ben Gras
b9a0d46ea9
debug out
2008-12-11 14:46:46 +00:00
Ben Gras
3287b7f7d8
don't hang old binaries
2008-12-11 14:45:49 +00:00
Ben Gras
5e1bb6eb63
added some code to debug why filesystems won't unmount
2008-12-11 14:45:31 +00:00
Ben Gras
e96f86ed8c
throw out debugging code.
2008-12-11 14:44:10 +00:00
Ben Gras
eeba8ef01f
No more HZ.
2008-12-11 14:43:53 +00:00
Ben Gras
e9f0c576a3
Open stdin, stdout and stderr only after /etc/rc has executed. (/etc/rc
...
executes it itself.) This avoids keeping /dev nodes on the temporary
root filesystem (initial mfs) in use unnecessarily.
2008-12-11 14:43:25 +00:00
Ben Gras
68d0c4defe
- code shared with exec() letting boot-time processes have
...
their own fully fledged virtual address space and freeing
their pre-allocated heap+stack area (necessary to let memory
driver map in arbitrary areas of memory for /dev/mem without
sys_vm_map)
- small optimization preallocating memory on exec
- finished VR_DIRECT physical mapping code
2008-12-08 16:43:20 +00:00
Ben Gras
9b33056d2b
make allocmem accept and return values in bytes, ramdisk expects this.
2008-11-19 15:40:17 +00:00
Ben Gras
51fdce1d36
minor fixes
2008-11-19 14:10:33 +00:00
Ben Gras
6c92081a5a
paged mode is default.
2008-11-19 13:19:37 +00:00
Ben Gras
7b3d952a77
lingering file
2008-11-19 12:38:31 +00:00
Ben Gras
c078ec0331
Basic VM and other minor improvements.
...
Not complete, probably not fully debugged or optimized.
2008-11-19 12:26:10 +00:00
David van Moolenbroek
f73b541952
Backport of fix from asynchvfs branch for PM-LOG-VFS-PM deadlock that resulted in VFS panics.
2008-06-24 13:53:03 +00:00
Philip Homburg
4696d74480
Select support for eth by Erik van der Kouwe.
2008-03-12 14:10:21 +00:00
Philip Homburg
9d62f56ea1
SYS_MAPDMAx -> SYS_MAPDMA.
2008-02-25 14:36:28 +00:00
Philip Homburg
f82a1c4df7
Fixed include files.
2008-02-25 14:35:54 +00:00
Philip Homburg
bc7e3c02a3
Asynchronous select implementation.
2008-02-22 15:46:59 +00:00
Philip Homburg
ff7eae2ad8
Private copy of kputc to support asynch communication with log device.
2008-02-22 15:43:33 +00:00
Philip Homburg
2ec762c60c
Asynchronous communication with character specials.
2008-02-22 15:41:07 +00:00
Philip Homburg
d9a9b727e2
Added dmap_async_driver and dmap_sel_filp fields. Support for asynch character
...
drivers (needs cleaning up).
2008-02-22 15:01:00 +00:00
Philip Homburg
9df94c5ee8
Use dev_t instead of Dev_t in structures.
2008-02-22 14:54:00 +00:00
Philip Homburg
097d8fee66
Use nonblocking send for reply. Support for asynchronous message passing
...
(needs cleaning up).
2008-02-22 14:53:02 +00:00
Philip Homburg
66c930ef8b
Higher NCALLS requires bigger table. New calls are in PM.
2008-02-22 14:51:38 +00:00
Philip Homburg
93ff4c327f
Added XDOPEN.
2008-02-22 14:50:41 +00:00
Philip Homburg
9388a27070
Support for O_REOPEN flag and pass the filp numbet to dev_open.
2008-02-22 14:49:02 +00:00
Philip Homburg
7387449b23
Support for suspending on character device open and on drivers that need to
...
be restarted.
2008-02-22 14:47:40 +00:00
Philip Homburg
ca91b3b5be
New fp_flags. Currently used to signal that is process should be suspended
...
a driver is restarted.
2008-02-22 14:32:23 +00:00
Philip Homburg
6ef71b8198
Pass suspend_reopen flag to dev_io.
2008-02-22 14:26:41 +00:00
Philip Homburg
047cc090e4
Added filp_state for driver recovery and filp_select_flags to store select
...
state for character specials that use asynch I/O.
2008-02-22 14:19:23 +00:00
Philip Homburg
1d7d5aa629
dev_close needs the filp number for asynch I/O, dev_io gets suspend_reopen
...
flag to suspend a process until the filedescriptor is re-opened. Added
dev_reopen, asyn_io, suspended_ep, reopen_reply, asynsend, diag_repl,
close_filp, close_reply, unpause, select_reply1, select_reply2.
2008-02-22 14:03:14 +00:00
Philip Homburg
e5df351245
Support for blocking open on char specials (due to asynch message passing),
...
asynch. close, added close_filp function.
2008-02-22 13:57:11 +00:00
Philip Homburg
1cffa69d2c
Support for I/O MMU: do not re-use a memory segment until the I/O MMU has
...
removed it from its map.
2008-02-21 16:33:34 +00:00
Philip Homburg
3f23bca404
Removed defines not needed by mfs (XPIPE, XLOCK, XPOPEN, XSELECT, DUP_MASK).
2008-02-21 16:22:36 +00:00
Philip Homburg
ca8291c815
Support for restricting limiting IPC to a set of endpoints. Not enabled by
...
default, pass -i to service. Do not reply to bogus request types. Reply using
sendnb.
2008-02-21 16:20:22 +00:00
Philip Homburg
d9858cfabf
Removed some debug output.
2008-02-21 16:08:08 +00:00
Ben Gras
2876d5c4ba
Optimization in searching for new zones to allocate contributed
...
by Jens de Smit.
2008-02-06 15:05:57 +00:00
Ben Gras
67d1b67805
exit prototype
2007-10-23 14:19:16 +00:00
Ben Gras
e8aec69c7b
tweak to panic functions of mfs and vfs.
...
. print newline
. when recursive panic detected, don't simply return, confusing
the caller, but print a diagnostic and exit
. don't call sys_exit as this may confuse PM; it should be OK
to call PM exit() nowadays.
2007-10-23 14:17:51 +00:00
Ben Gras
21ae963cf1
Fixes two wrong grant return checks and one 'grant leak'.
2007-10-17 10:46:20 +00:00
Ben Gras
b6e07e1835
close device if mount fails after device opened.
2007-09-26 15:06:41 +00:00
Ben Gras
38604e4e3a
Don't truncate read requests based on v_size; v_size can be stale in the
...
case of directories extended by subfilesystem. Rely on subfilesystem to
do read size truncating and return actual i/o size. This fixes bug 81 in
gforge, and unbreaks test 23.
2007-09-11 15:52:22 +00:00
Philip Homburg
ab3062c8c0
REQ_FSTATFS now operates on the root inode (the inode parameter has been
...
removed)
2007-08-17 11:20:59 +00:00
Philip Homburg
9c3f85d14f
Better interface for sys_times.
2007-08-16 13:16:26 +00:00
Philip Homburg
4b1cd8c0ec
Return EIO if a filedescriptor cannot be re-opened after a driver restart.
...
Select now returns such a filedescriptor as ready (instead of EBADF).
Reply before dev_up in FSSIGNON to avoid the problem that a DEV_OPEN
request is received by a driver that expects a reply from the FSSIGNON.
2007-08-15 12:53:52 +00:00
Philip Homburg
90fde6e97d
cleanup
2007-08-10 13:02:39 +00:00
Philip Homburg
06e1f0da61
Better recovery when req_readsuper fails.
2007-08-10 13:01:38 +00:00
Philip Homburg
57c6f099f2
Removed old debug code.
2007-08-08 15:27:07 +00:00
Philip Homburg
e2f06e7c89
Directory check before access check.
2007-08-08 15:26:47 +00:00
Philip Homburg
a116b3aa55
To return the right error, check first is an object is a directory (for
...
mkdir, rmdir/unlink, mknod), simply pipe code by using v_pipe_rd_pos and
v_pipe_wr_pos directly. Some cleanup work in open.c
2007-08-08 14:01:36 +00:00
Philip Homburg
c2bf536a55
Disable POSIX-required behavior wrt trailing slashes.
2007-08-08 11:40:47 +00:00
Philip Homburg
d232b2ef42
Removed invalid consistency check.
2007-08-07 14:27:19 +00:00
Philip Homburg
9c51f0b92a
O_EXCL check went missing.
2007-08-07 14:26:56 +00:00
Philip Homburg
d01d630727
include "../vfs/dmap.h".
2007-08-07 13:26:25 +00:00
Philip Homburg
1b883a3613
Removed references to stacktrace.
2007-08-07 13:21:55 +00:00
Philip Homburg
a318cd291f
Somehow request.c got garbled.
2007-08-07 13:12:27 +00:00
Philip Homburg
f46319037b
New VFS interface
2007-08-07 12:52:47 +00:00
Philip Homburg
2ca2b86a3a
Added new interface to VFS.
2007-08-07 12:38:35 +00:00
Philip Homburg
a81e82b3da
Tell the kernel about the new boottime and don't tell VFS.
...
Tell DS about all processes in the boot image. PM_STIME is removed.
Diagnostic for calls to do_getprocnr (DS should be used to get endpoints).
2007-08-07 12:28:42 +00:00
Philip Homburg
fd151245e9
Removed sigaction call. PM tries to talk to DS. DS should not talk to PM.
2007-08-07 12:25:21 +00:00
Philip Homburg
1f04287b3f
Removed dmap table. Publish endpoint in DS before calling mapdriver5.
2007-08-07 12:24:06 +00:00
Ben Gras
30ba1ec187
also allow vm_map.
2007-07-11 13:45:06 +00:00
Ben Gras
eb4609c108
Don't exit when rebooting.
2007-07-11 13:44:45 +00:00
Philip Homburg
56a68dc32b
Hack in service to use RS_START instead of RS_UP. RS reports the use of RS_UP.
2007-05-02 15:20:28 +00:00
Philip Homburg
33d31720a5
Use ds_retrieve_u32 to get the endpoint of inet and of the ethernet drivers.
2007-05-02 11:30:16 +00:00