Robert Morris
12abb1a561
don't let dirty blocks be evicted from cache!
2011-10-14 10:23:23 -04:00
Robert Morris
a5fbfe418a
clarify some FS comments
2011-10-11 06:41:37 -04:00
Frans Kaashoek
1ddfbbb194
Revert "Introduce and use sleeplocks instead of BUSY flags"
...
My changes have a race with re-used bufs and the code doesn't seem to get shorter
Keep the changes that fixed ip->off race
This reverts commit 3a5fa7ed90
.
Conflicts:
defs.h
file.c
file.h
2011-08-29 17:18:40 -04:00
Frans Kaashoek
3a5fa7ed90
Introduce and use sleeplocks instead of BUSY flags
...
Remove I_BUSY, B_BUSY, and intrans defs and usages
One spinlock per buf to avoid ugly loop in bget
fix race in filewrite (don't update f->off after releasing lock)
2011-08-26 10:08:29 -04:00
Frans Kaashoek
af03ab142d
a few nits
...
passes all tests on two-processor smp
2010-07-23 12:52:50 -04:00
Frans Kaashoek
7d7465a858
8ae0 instead of 8e00, thanks yandong
2009-12-01 14:07:12 -05:00
rsc
34295f461a
group locks into structs they protect.
...
few naming nits.
2009-05-31 05:12:21 +00:00
rsc
0badeaa29f
bio.c: use struct like icache does
2009-05-31 01:29:17 +00:00
rsc
0ca9ca0c55
slight rearrangement; sleep on b not buf.
2009-05-31 00:23:00 +00:00
rsc
2157576107
be consistent: no underscores in function names
2009-03-08 22:07:13 +00:00
rsc
6eed1ee9b0
formatting
2007-08-28 05:00:53 +00:00
rsc
558ab49f13
delete unnecessary #include lines
2007-08-27 23:26:33 +00:00
rsc
d003d232fc
Another attempt at the bio.c comment.
...
Rename B_WRITE to B_DIRTY and then let ide.c
maintain the B_VALID and B_DIRTY flags.
2007-08-27 14:09:30 +00:00
rsc
872a63e104
nits
2007-08-24 21:14:58 +00:00
rsc
4d39b63388
nits
2007-08-24 19:46:19 +00:00
rtm
902b13f5d6
simplify ide queuing
...
nits in comments
2007-08-24 19:32:36 +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
0655445ba9
cleanup loop
2007-08-14 19:42:14 +00:00
rsc
3f98d050e1
refactor bget to be more like iget - make it clear that sleep loops
2007-08-08 09:50:26 +00:00
rsc
95edc8921f
debugging help
2006-09-07 16:54:28 +00:00
rsc
19297caf0d
fix ide, pit interfaces
2006-09-07 15:29:54 +00:00
rsc
7a054598fa
fix build bug
2006-09-07 14:39:05 +00:00
rsc
bb207a1d42
comments
2006-09-07 14:28:12 +00:00
rsc
0cfc7290e8
wrap long lines
2006-09-06 19:08:14 +00:00
rsc
db8fb62e4d
for vs while
2006-09-06 18:47:51 +00:00
rsc
9e9bcaf143
standardize various * conventions
2006-09-06 17:27:19 +00:00
rtm
2aa4c3bc29
complain if no disk 1
...
lots of cleanup
2006-08-30 18:55:06 +00:00
rtm
05e975511b
zero out all of dirent.name when creating
...
don't increase length of directory
2006-08-12 22:44:26 +00:00
rtm
cd93074e5b
LRU disk cache replacement
2006-08-12 22:34:13 +00:00
rtm
14938f9392
buffer cache, fifo replacement
2006-08-12 17:17:35 +00:00
rtm
4357207237
fix getblk to actually lock the block
...
no more cons_put system calls
usertests tests two processes writing files
2006-08-12 11:38:57 +00:00
rtm
5be0039ce9
interrupts could be recursive since lapic_eoi() called before rti
...
so fast interrupts overflow the kernel stack
fix: cli() before lapic_eoi()
2006-08-10 22:08:14 +00:00
kaashoek
104207726b
bwrite
2006-08-07 01:38:46 +00:00
kaashoek
8ec6530fee
generalize async read to support write too
2006-08-06 20:28:15 +00:00
kaashoek
c8b29f6d03
better interrupt plan---this one appears to work
...
ioapic
2006-08-04 18:12:31 +00:00
rtm
32630628a9
open()
2006-07-29 09:35:02 +00:00
rtm
11a9947f1a
bread
...
iget
mkfs makes a file system image
put this in your .bochsrc:
ata0-slave: type=disk, mode=flat, path="fs.img", cylinders=1024, heads=1, spt=1
2006-07-21 13:18:04 +00:00