Frans Kaashoek
912575ad12
Remove left-over print statements
2016-09-15 19:16:30 -04:00
Frans Kaashoek
2adb7c21dc
Move retry loop/sleep/wakeup in bio.c into sleeping locks
2016-09-11 20:17:22 -04:00
Frans Kaashoek
6670d3b5e0
Straight replacement of B_BUSY with a sleeping lock.
2016-09-11 17:24:04 -04:00
Frans Kaashoek
7894fcd217
Remove trailing white space with:
...
for f in *.{h,c}; do sed -i .sed 's/[[:blank:]]*$//' $f; done
(Thanks to Nicolás Wolovick)
2016-08-25 09:13:00 -04:00
Frans Kaashoek
c24ac5d763
Disentangle block size from the disk's sector size. Set block size to 1024 to show
...
that they can be different. Clean up mkfs, simplifying specifying fs parameters,
remove some redundancy between fs and mkfs, and fix disk layout bugs. Call blocks
in the file system blocks instead of sectors. Passes usertests for different
block sizes.
2015-04-03 08:22:02 -04:00
Frans Kaashoek
74c77da6f8
Nice layout for a printout of the code
2014-08-29 17:06:49 -04:00
Robert Morris
8d618cab78
Merge branch 'master' of git+ssh://amsterdam.csail.mit.edu/home/am0/6.828/xv6
2014-08-28 16:13:58 -04:00
Robert Morris
48aa917403
i think this is a working concurrent logging scheme
2014-08-28 05:57:47 -04:00
Robert Morris
12eeefc72d
comments
2014-08-27 14:14:52 -04:00
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