Ben Gras
fd7ef243e4
cleanup of vfs shutdown logic; makes clean unmounts easier (but
...
needs checking if fp_wd or fp_rd is NULL before use)
2009-04-29 16:59:18 +00:00
Ben Gras
73ee8b8b99
don't make susp_count negative.
2009-04-02 11:44:26 +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
570b9cd753
Checking wrong inode pointer for refcount in mount (!)
2009-02-17 09:50:02 +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
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
d2757d4b73
debug buffer slightly usabler.
2008-12-19 15:19:42 +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
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
c078ec0331
Basic VM and other minor improvements.
...
Not complete, probably not fully debugged or optimized.
2008-11-19 12:26:10 +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
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
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
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
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
a318cd291f
Somehow request.c got garbled.
2007-08-07 13:12:27 +00:00