Frans Kaashoek
d98ddadd79
Also release buffer on failed copyout
2019-08-20 12:46:56 -04:00
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
Frans Kaashoek
21ad8c76bc
A few now unused DOC
2019-08-19 18:12:19 -04:00
Frans Kaashoek
e10f797762
Merge remote-tracking branch 'origin/master' into riscv
2019-08-19 13:35:47 -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
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
0c10cbe829
syscall lab nits
2019-08-02 11:55:26 -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
Robert Morris
d600026c3f
cut ramdisk
2019-07-30 16:06:00 -04:00
Frans Kaashoek
848d1906e8
Track in buf if disk "owns" buffer
2019-07-30 12:53:19 -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
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
Robert Morris
6507da772d
argptr no longer needed, since copyin checks
2019-07-28 06:29:37 -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
Robert Morris
281d450a08
split printf into a separate file, to make console.c more like a driver
2019-07-27 03:49:03 -04:00
Robert Morris
cc1a303d09
fetchint isn't used any more
2019-07-26 12:34:06 -04:00
Robert Morris
f0987d82dc
???
2019-07-26 11:09:54 -04:00
Robert Morris
c714e3e35c
machinevec -> timervec
2019-07-26 10:17:02 -04:00
Robert Morris
fa2e2e3c81
uservec before userret in trampoline, to match book and kernelvec
2019-07-26 09:38:22 -04:00
Robert Morris
8d30e21b59
Merge branch 'riscv' of g.csail.mit.edu:xv6-dev into riscv
2019-07-26 04:53:59 -04:00
Robert Morris
ea95a6654c
trampin -> uservec
...
trampout -> userret
2019-07-26 04:53:46 -04:00
Frans Kaashoek
47c9721d78
a few name changes in panic msg
2019-07-25 06:59:07 -04:00
Robert Morris
4e62de64cd
fix an exit/exit deadlock -> one more locking protocol violation
...
increase timer rate from 1/second to 10/second
2019-07-25 06:30:49 -04:00
Robert Morris
b19adf79f9
purge x86 stuff from defs.h
2019-07-25 05:37:35 -04:00
Robert Morris
5d5e4e065f
comments for timer setup
2019-07-25 05:35:03 -04:00
Robert Morris
9a817bd134
rationalize some vm function names
2019-07-24 15:28:37 -04:00
Robert Morris
da898a11b6
???
2019-07-24 14:40:13 -04:00
Robert Morris
a77287e924
no more PAGEBREAK
2019-07-24 13:33:43 -04:00
Robert Morris
b4f89bb529
ping-pong exercise
2019-07-24 10:39:05 -04:00
Robert Morris
8f6865d1f1
display assembly instructions, to help with first.tex exercise
2019-07-24 10:15:45 -04:00
Robert Morris
936afc6e1a
mstart -> start
2019-07-23 14:31:12 -04:00
Robert Morris
54178ad94d
simplify kernel mapping calls
2019-07-23 12:17:17 -04:00
Robert Morris
55bc96d419
a few core -> CPU
...
get rid of PDF generating support
2019-07-23 11:14:10 -04:00
Frans Kaashoek
b8a31c494c
one more TRAMPOLINE
2019-07-23 07:30:23 -04:00
Frans Kaashoek
6c78af4a57
fix mapkstack
2019-07-22 20:58:15 -04:00
Frans Kaashoek
b2e9c8eea5
Clear U bit for second stack page so that it functions as a guard page
2019-07-22 15:38:08 -04:00
Robert Morris
38b430687c
nit
2019-07-22 15:04:07 -04:00
Robert Morris
6b379e4707
-MD and TRAPFRAME
2019-07-22 14:54:40 -04:00
Frans Kaashoek
5eab649255
Allocate 2 pages per proc, with the top one unmapped.
...
The page below the last proc is unmapped by default (because the
kernel doesn't map anything right below the kernel stacks).
2019-07-22 14:30:45 -04:00
Frans Kaashoek
c5d48db045
Merge branch 'riscv-kstack' into riscv
2019-07-22 13:32:33 -04:00
Robert Morris
328204d9cc
not much
2019-07-20 18:51:31 -04:00
Robert Morris
06e49a58dc
pi for pipe, rather than p, to avoid confusion with proc's p->lock
2019-07-20 17:07:20 -04:00