Commit graph

1454 commits

Author SHA1 Message Date
Frans Kaashoek 6005ef5a1c Release buffer also when copyin fails 2019-08-20 11:57:24 -04:00
Frans Kaashoek d9818b89e1 512 -> BSIZE 2019-08-20 11:56:56 -04:00
Frans Kaashoek a825f22cf8 Merge remote-tracking branch 'origin/master' into riscv 2019-08-19 19:27:29 -04:00
Dan Cross 82638c019c Avoid rereading the superblock in bfree
The superblock is read when the first process returns to
userspace (via the call to `iinit` from the first invocation of
`forkret`, when `first` is still set to 1) and cached in a
global; it is treated as immutable from that point on.  There is
no reason to re-read it in bfree.

Removing this call seems to have simply been missed in 8320d61b
when this general area was last touched.  Remove it now to avoid
potential confusion.

Signed-off-by: Dan Cross <cross@gajendra.net>
2019-08-19 19:25:43 -04:00
Frans Kaashoek 21ad8c76bc A few now unused DOC 2019-08-19 18:12:19 -04:00
Frans Kaashoek ce565ae04a dan cross 2019-08-19 14:46:33 -04:00
Frans Kaashoek e10f797762 Merge remote-tracking branch 'origin/master' into riscv 2019-08-19 13:35:47 -04:00
Dan Cross 0581c37baf Removed unused dirlookup argument in create
The `off` argument to `dirlookup` is optional.  It
was not being used in the `dirlookup` call in `create`,
so pass NULL instead and delete the unused local.

Signed-off-by: Dan Cross <cross@gajendra.net>
2019-08-19 13:22:35 -04:00
Frans Kaashoek 2501560cd6 Cosmetic cleanup: fsinit reads sb and calls loginit. initialize icache
in main.c and don't make it disk specific; the icache is shared.  This
doesn't matter since we have only one disk, but conceptually cleaner
and maybe helpful to students for mount lab.
2019-08-18 14:35:11 -04:00
Frans Kaashoek a9953236cc x 2019-08-17 12:52:25 -04:00
Frans Kaashoek e61377bf8a Update write up to reflect new test cases. 2019-08-17 12:33:32 -04:00
Frans Kaashoek 5498ee2e92 Draft mount/umount lab as an alternative lab for fs.html
fs.html should perhaps be split in small homeworks as in previous
years in preparation for lectures and/or as demos during lecture.
2019-08-12 10:25:55 -04:00
Frans Kaashoek e398a9815c Wrap state of disk driver in a struct so that it is easier to support
several disks (e.g., in a mount lab).
2019-08-12 07:20:32 -04:00
Robert Morris d96a8c5661 add alarmtest.c to the repository
they don't have to modify alarmtest.c, so we can use the
original version to test, to make it harder to cheat.
2019-08-05 02:04:44 -04:00
Robert Morris deec67f05d alarm stuff 2019-08-03 07:12:00 -04:00
Frans Kaashoek fdea265489 two notes 2019-08-02 16:42:55 -04:00
Frans Kaashoek 564d10bb22 Add simple crash recovery assignment to fs lab 2019-08-02 16:29:25 -04:00
Robert Morris c5163e4a42 nits 2019-08-02 16:22:56 -04:00
Robert Morris 3bee885ed7 some XXX questions 2019-08-02 14:51:04 -04:00
Robert Morris e788af9b81 oops, back to alarm() 2019-08-02 13:25:57 -04:00
Robert Morris 0b5c01d429 Merge branch 'riscv' of g.csail.mit.edu:xv6-dev into riscv 2019-08-02 13:18:37 -04:00
Robert Morris 9110f40b7d sigalarm 2019-08-02 13:18:26 -04:00
Frans Kaashoek 7510ac70e5 Combine the linux mmap hw with memory-mapped files in xv6 into a separate lab 2019-08-02 13:07:21 -04:00
Robert Morris 0c10cbe829 syscall lab nits 2019-08-02 11:55:26 -04:00
Frans Kaashoek 0c3125b9eb Add uthread 2019-08-02 08:52:36 -04:00
Frans Kaashoek b02ef59e14 x 2019-08-01 16:52:38 -04:00
Frans Kaashoek 62ece4b09e Merge branch 'riscv-bcache' into riscv 2019-08-01 15:46:50 -04:00
Robert Morris fb8a0099d4 fences for starting 2019-08-01 14:59:20 -04:00
Frans Kaashoek 77da01abb1 First draft of text for mmap assignment. 2019-08-01 07:56:39 -04:00
Robert Morris d600026c3f cut ramdisk 2019-07-30 16:06:00 -04:00
Frans Kaashoek b70cd9ebd7 Import big file assignment. 2019-07-30 14:33:09 -04:00
Frans Kaashoek 9c4f62e8e3 x 2019-07-30 13:07:17 -04:00
Frans Kaashoek 848d1906e8 Track in buf if disk "owns" buffer 2019-07-30 12:53:19 -04:00
Frans Kaashoek 87183da13d An easier version of bcache assignment 2019-07-30 10:01:22 -04:00
Frans Kaashoek f37a3e3964 Make pin/unpin explicit 2019-07-30 08:54:43 -04:00
Frans Kaashoek f1bb53c690 The driver should free descriptors, not interrupt handler. This
avoids handler freeing descriptors before driver sees that the request
has completed.
2019-07-30 08:13:03 -04:00
Frans Kaashoek 5304310452 Remove B_DIRTY
Use refcnt to pin blocks into the cache
Replace flags/B_VALID with a boolean field valid
Use info[id].status to signal completion of disk interrupt
Pass a read/write flag to virtio_disk_rw
2019-07-29 17:33:16 -04:00
Frans Kaashoek 34980381bd checkpoint 2019-07-29 15:49:47 -04:00
Frans Kaashoek 005773c0c3 Merge branch 'riscv' of g.csail.mit.edu:xv6-dev into riscv 2019-07-29 11:44:55 -04:00
Robert Morris 47b9cfee49 separate out timer init code for clarity 2019-07-28 13:16:49 -04:00
Robert Morris 1ec50c5848 xxx 2019-07-28 07:43:22 -04:00
Frans Kaashoek 33494edad5 Merge branch 'riscv' of g.csail.mit.edu:xv6-dev into riscv 2019-07-28 07:43:09 -04:00
Robert Morris 2d89a101c4 Merge branch 'riscv' of g.csail.mit.edu:xv6-dev into riscv 2019-07-28 07:10:23 -04:00
Robert Morris 6507da772d argptr no longer needed, since copyin checks 2019-07-28 06:29:37 -04:00
Frans Kaashoek fe14bd1113 a thought 2019-07-27 21:02:37 -04:00
Frans Kaashoek bdcd23ea49 a bit more 2019-07-27 20:18:40 -04:00
Frans Kaashoek d82f43e0c7 Checkpoint start of locking lab 2019-07-27 16:00:12 -04:00
Robert Morris 629faafa36 cleaner UART register interface 2019-07-27 06:44:24 -04:00
Robert Morris a33f60fea3 console/uart tweaks 2019-07-27 05:47:19 -04:00
Robert Morris cf48b24c03 beautify console.c 2019-07-27 04:15:06 -04:00