rtm
902b13f5d6
simplify ide queuing
...
nits in comments
2007-08-24 19:32:36 +00:00
rsc
2bc72bdd29
bring bootasm and bootother more in sync
2007-08-24 19:25:52 +00:00
rsc
5d1f4b8a3a
Rework comments a bit.
...
Move initialization of %sp after
protected mode jump and change to %esp.
2007-08-24 18:52:59 +00:00
rtm
2036534834
add missing iput() at end of _namei()
2007-08-24 14:56:17 +00:00
rtm
b55513796f
oops, O_CREATE doesn't truncate, so holes can't exist, thus no bug
2007-08-24 12:55:15 +00:00
rtm
3d5f21ee1f
test concurrent open/unlink of same file (ok)
...
test files with holes (not ok)
2007-08-24 12:19:13 +00:00
rsc
68ae4cc127
comment what +m means; omit needless __
2007-08-24 00:34:54 +00:00
rsc
2aae720537
omit needless ampersands
2007-08-24 00:02:03 +00:00
rsc
649bc99fe4
align, sort
2007-08-23 23:58:19 +00:00
rsc
b1fb19b6df
Use parent pointer instead of ppid.
2007-08-23 14:40:30 +00:00
rsc
3a057d12ae
avoid hardcoding init as pid 1 proc[0]
2007-08-23 14:35:28 +00:00
rsc
1d7839a1da
my mistake found by robert
2007-08-22 17:45:52 +00:00
rsc
e9ddc7c099
NREQUEST = NBUF
2007-08-22 14:38:00 +00:00
rsc
15868c4bbf
better comment
2007-08-22 14:21:05 +00:00
rsc
f0721f1be4
tweaks
2007-08-22 06:20:10 +00:00
rsc
eaea18cb9c
PDF at http://am.lcs.mit.edu/~rsc/xv6.pdf
...
Various changes made while offline.
+ bwrite sector argument is redundant; use b->sector.
+ reformatting of files for nicer PDF page breaks
+ distinguish between locked, unlocked inodes in type signatures
+ change FD_FILE to FD_INODE
+ move userinit (nee proc0init) to proc.c
+ move ROOTDEV to param.h
+ always parenthesize sizeof argument
2007-08-22 06:01:32 +00:00
rsc
3dcf889c1b
cleanup
2007-08-22 05:57:39 +00:00
rsc
6bf2e5c898
add ln
2007-08-22 05:54:55 +00:00
rsc
c88bf235fe
check unlink of non-empty directory
2007-08-22 02:21:22 +00:00
rsc
bd39955ecc
ARGMAX -> MAXARGS
2007-08-21 20:01:11 +00:00
rsc
fbf9103952
remove namelen parameter
2007-08-21 19:58:55 +00:00
rsc
0073beee52
remove dead code
2007-08-21 19:22:27 +00:00
rsc
f32f3638f4
Various cleanup:
...
- Got rid of dummy proc[0]. Now proc[0] is init.
- Added initcode.S to exec /init, so that /init is
just a regular binary.
- Moved exec out of sysfile to exec.c
- Moved code dealing with fs guts (like struct inode)
from sysfile.c to fs.c. Code dealing with system call
arguments stays in sysfile.c
- Refactored directory routines in fs.c; should be simpler.
- Changed iget to return *unlocked* inode structure.
This solves the lookup-then-use race in namei
without introducing deadlocks.
It also enabled getting rid of the dummy proc[0].
2007-08-21 19:22:08 +00:00
rsc
2d61a40b20
bug in usertests!
2007-08-20 21:00:20 +00:00
rsc
e2a620da49
checkpoint - simpler namei interface
2007-08-20 19:37:15 +00:00
rsc
ef30c2c749
no more w
2007-08-20 18:55:51 +00:00
rsc
bcca6c6bde
shuffle fs.c in bottom-up order
2007-08-20 18:23:52 +00:00
rsc
0655445ba9
cleanup loop
2007-08-14 19:42:14 +00:00
rsc
2186f88c21
formatting, cleanup
2007-08-14 19:41:56 +00:00
rsc
cce27ba9fb
formatting
2007-08-14 19:41:38 +00:00
rsc
07ddc0fa82
nit
2007-08-14 19:41:29 +00:00
rsc
fe5f50a03d
fixes
2007-08-14 19:41:01 +00:00
rsc
5e8c5d8bb8
formatting; split kbd constants into kbd.h
2007-08-14 19:31:16 +00:00
rsc
ea6e370964
i cannot prove that release before wakeup is wrong, but i cannot convince myself it is right either
2007-08-14 19:10:57 +00:00
rsc
4bc5056c19
formatting, simplify
2007-08-14 19:05:48 +00:00
rsc
8d0a83565a
formatting, sleep bug fix
2007-08-14 18:46:29 +00:00
rsc
f1f8dd91bc
formatting
2007-08-14 18:42:34 +00:00
rsc
29ff8d495c
ide_write unused => gone
2007-08-14 14:24:09 +00:00
rsc
8c4b5fc5b3
Gcc expects to be able to pick up the return
...
address off the stack, so put one there for it.
(Bug was hidden by bad segment limits.)
2007-08-14 04:56:30 +00:00
rsc
2ef3a64bb4
Because limit gives the address of the last addressable
...
byte in the segment, the limit argument to SEG16 and SEG
needs to have 1 subtracted from it.
2007-08-14 04:55:45 +00:00
rsc
64659055bd
ditto
2007-08-14 04:06:02 +00:00
rsc
3163085ace
Cannot use "g" as an arg constraint because
...
some memory references aren't actually valid
and gcc is a bit too smart in parsing (%0) and
a bit too dumb in knowing which memory refs
are not valid. Using "r" seems to constrain gcc
to use a register as in (%eax) and not substitute
a memory reference like (-36(%ebp)).
No one really understands these things.
2007-08-14 04:05:27 +00:00
rsc
5e03dd86c8
add test for rm .
2007-08-10 17:53:09 +00:00
rsc
15b326b630
nit
2007-08-10 17:45:49 +00:00
rsc
8908cc9b15
correct line numbers
2007-08-10 17:45:14 +00:00
rsc
8139713c46
add note
2007-08-10 17:19:15 +00:00
rsc
2715cd3592
and spinlock
2007-08-10 17:17:57 +00:00
rsc
dca5b5ca2e
avoid assignments in declarations
2007-08-10 17:17:42 +00:00
rsc
6861140a66
replace bogus loops with slightly less bogus loops.
2007-08-10 17:05:46 +00:00
rsc
3d145283a2
tweak kalloc
2007-08-10 17:02:36 +00:00