Frans Kaashoek
da51735980
Avoid two cores selecting the same process to run
2019-07-02 13:40:33 -04:00
Robert Morris
f59c1bf1d8
try to continue from walk() failing to allocate a page-table page
2019-07-02 11:45:06 -04:00
Robert Morris
b27f275014
avoid allocproc() returning a struct proc with non-zero p->sz
2019-07-02 11:17:50 -04:00
Robert Morris
1540c8b15a
COW tests
2019-07-02 11:04:35 -04:00
Frans Kaashoek
67702cf706
Checkpoint switching to per-process locks, in attempt clarify xv6's
...
locking plan, which is a difficult to understand because ptable lock
protects many invariants. This implementation has a bug: once in a
while xv6 unlocks a proc lock that is locked by another core.
2019-07-02 09:14:47 -04:00
Robert Morris
40f1041a0a
don't enable interrupts until done with sstatus, scause, &c
2019-07-02 05:20:11 -04:00
Robert Morris
535ac52efa
oops, don't hold mycpu() result across intr_off()
2019-07-01 17:54:41 -04:00
Robert Morris
abfe9999f4
have fork() fail, not panic, if not enough phys mem
2019-07-01 17:46:06 -04:00
Robert Morris
18e76a6c47
sbrk() returns a pointer, so it should be 64 bits
2019-07-01 17:01:50 -04:00
Robert Morris
9b99f00743
oops, don't hold mycpu() result across intr_off()
2019-07-01 14:15:18 -04:00
Robert Morris
0498bfd159
timer interrupt in the kernel -> yield
2019-07-01 13:46:11 -04:00
Frans Kaashoek
2c0338fe42
x
2019-07-01 08:28:14 -04:00
Frans Kaashoek
af6c35e14b
Introduce alloc3_desc and UsedArea to make code easier to read
2019-07-01 08:20:35 -04:00
Robert Morris
a8305b7318
FD_DEVICE
2019-06-13 10:29:27 -04:00
Robert Morris
46744c4a13
for spinlocks, use gcc intrinsics, but say what they compile to
2019-06-13 10:00:50 -04:00
Robert Morris
ca39672a30
clean up virtio code
2019-06-13 09:40:17 -04:00
Robert Morris
4adf016925
eliminate ramdisk
2019-06-13 06:57:38 -04:00
Robert Morris
de9d72c908
virtio disk driver
2019-06-13 06:49:02 -04:00
Robert Morris
5753553213
separate source into kernel/ user/ mkfs/
2019-06-11 09:57:14 -04:00