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
Philip Homburg
02a229f14d
Publish endpoints in ds.
2007-04-27 13:03:33 +00:00
Philip Homburg
93f9bb4a57
Restrict access to rs to root's processes.
2007-04-27 12:27:40 +00:00
Philip Homburg
69ca935251
getpeuid implementation. Get the uid of a process (by endpoint)
2007-04-27 12:21:06 +00:00
Ben Gras
8eb09f6ddc
. readall: use lseek64() to read more than 4GB of a device
...
. vfs: 64-bit offset support for character device i/o
(also remove unused dev_bio function)
. memory: /dev/null and /dev/zero are infinitely large, don't stop
reading/writing at 4GB
2007-04-24 13:27:33 +00:00
Philip Homburg
0bd4c5ee7d
Initial convertion to asynchronous sends for communicating with ethernet
...
drivers.
2007-04-23 14:49:20 +00:00
Philip Homburg
b613f5cb4b
Report and detect exec failures using a pipe.
...
XXX Hardcoded values for s_ipc_to and s_ipc_sendrec.
2007-04-23 14:47:04 +00:00
Philip Homburg
727ce18aa8
Initialize exec_pipe.
2007-04-23 14:43:25 +00:00
Philip Homburg
849285f66d
Diagnostics from service go to standard error.
2007-04-23 14:42:58 +00:00
Philip Homburg
e68a2b4d6a
Extra flags RS_SIGNALED and RS_EXECFAILED. Pipe for detecting exec failures.
2007-04-23 14:42:08 +00:00
Philip Homburg
b4a88a3705
Removed ECHO from dump, added SENDA. Also dump s_ipc_sendrec.
2007-04-23 14:40:13 +00:00
Philip Homburg
77f5b40141
Round memory size up for VM.
2007-04-23 14:38:55 +00:00
Philip Homburg
b5e6319ae7
Removed some indentation.
2007-04-23 14:33:42 +00:00
Ben Gras
1d7cea10ed
str[] is too small - reported by Erik van der Kouwe <vdkouwe@cs.vu.nl>.
2007-04-23 13:36:13 +00:00
Ben Gras
dc67b37a10
more removing of warning and debug messages.
2007-04-13 14:00:31 +00:00
Ben Gras
6b2ad6fdfd
verbose message out
2007-04-12 17:01:54 +00:00
Ben Gras
a2b1a5134b
. leave out hardware-fp code from library
...
. minor packman usage tweaks
. kernel feature for printing version number
. removed some verbose debug messages from vfs/mfs
2007-04-12 16:45:00 +00:00
Ben Gras
2958815463
leave out debug message
2007-04-12 15:24:45 +00:00
Ben Gras
647d1496f3
fix for warning
2007-04-02 14:45:56 +00:00
Ben Gras
52b71b2396
Minor change to path lookup that fixes the bug that creating a file
...
as a first component of an absolute path failed (e.g. 'touch /file'),
due to leading slashes not being skipped in the processed path counter
in that case, causing create to fail.
2007-02-28 13:13:39 +00:00
Ben Gras
3b08825d85
. service tells you which device it couldn't stat
...
. bigger rs and ramdisk for drivers
. sanity check for pv_set macro for oversized arguments
2007-02-23 18:22:46 +00:00
Ben Gras
448376ee7e
. use library function to parse memory string
...
. remove unused variables and some other gcc warnings
2007-02-16 15:55:20 +00:00
Ben Gras
b267d42531
removed or optionalized verbose/debugging messages
2007-02-16 15:50:30 +00:00
Ben Gras
bd27c5240b
Typo's.
2007-02-12 12:27:43 +00:00
Ben Gras
9f2f3dd488
don't call mkdep with an absolute path
2007-02-08 16:26:20 +00:00
Ben Gras
a12c7ad963
Start a 2nd copy of at_wini, for /dev/c1*. This requires a slightly
...
larger rs.
2007-02-08 14:04:59 +00:00
Ben Gras
8ea438ae93
Retired DEV_{READ,WRITE,GATHER,SCATTER,IOCTL} (safe versions *_S are to
...
be used and drivers should never receieve these 'unsafe' variants
any more).
2007-02-07 16:22:19 +00:00