Commit graph

1467 commits

Author SHA1 Message Date
FIXED-TERM Chen Ian (BT-CO/QMM5) 8d4ff0bc1e fix typos in user/usertest.c & kernel/log.c 2021-08-31 14:10:14 -04:00
Jonathan Behrens 9655f71758 Configure PMP at boot 2021-08-30 16:27:52 -04:00
Robert Morris 6de0381d61 check for alignment just once 2021-08-10 07:12:41 -04:00
Robert Morris 3b3f83f100 check that there's no panic if user process tries to write >= MAXVA 2021-08-06 11:06:24 -04:00
Robert Morris 08c9eda85f sync usertests 2021-07-02 14:24:45 -04:00
Robert Morris 1841baa3dd keep usertests.c in sync with riscv-sol-2020 2021-07-02 09:57:14 -04:00
Frans Kaashoek 077323a8f0 Rename icache to itable
The inode cache isn't really a cache. The main purpose of it is to
allow for synchronization (locking individual inodes), providing
long-lived references to inodes, and ensuring that there is only inode
in memory.
2020-11-23 19:30:15 -05:00
Robert Morris 6e3f75c2aa suppress an incorrect error message in grind 2020-11-19 16:48:41 -05:00
Frans Kaashoek 231c08dc5e Merge remote-tracking branch 'refs/remotes/origin/riscv' into riscv 2020-11-05 19:51:41 -05:00
Frans Kaashoek 60b63b9d07 x 2020-11-05 19:50:46 -05:00
Frans Kaashoek ef97f65025 kill/status test 2020-11-05 19:50:46 -05:00
Frans Kaashoek b4c2851bb3 Be principled: acquire lock first 2020-11-05 19:50:46 -05:00
Robert Morris 38084bcea8 proc_tree_lock -> wait_lock 2020-11-05 19:50:46 -05:00
Robert Morris ba8d9f4808 don't over-lock in exit() 2020-11-05 19:50:46 -05:00
Frans Kaashoek 9599a8e616 x 2020-11-05 19:00:37 -05:00
Frans Kaashoek d7b308fe81 kill/status test 2020-11-05 18:50:02 -05:00
Frans Kaashoek b63d3506e9 Be principled: acquire lock first 2020-11-05 12:27:32 -05:00
Robert Morris 774288e05a proc_tree_lock -> wait_lock 2020-11-05 09:47:59 -05:00
Robert Morris bc943c2309 don't over-lock in exit() 2020-11-05 07:32:10 -05:00
Robert Morris 47323c97cf oops 2020-11-05 06:56:51 -05:00
Robert Morris 2875069973 Frans' proc_lock. 2020-11-05 06:56:51 -05:00
Robert Morris b48ea5d220 free proc if kalloc fails 2020-11-05 06:56:51 -05:00
Robert Morris 5e392531c0 hopefully make writei more correct 2020-11-05 06:56:51 -05:00
Robert Morris e1bb4c7434 test for closed pipe or killed on every char, not just if pipe full 2020-11-05 06:56:51 -05:00
Robert Morris 329935eca8 fix uart.c to work with UART_TX_BUF_SIZE == 1 2020-11-05 06:56:51 -05:00
Robert Morris 13dccb0380 consolewrite does not need cons.lock -- can lead to sleep() with lock held 2020-11-05 06:56:51 -05:00
Robert Morris 7dea4b93c8 oops 2020-11-03 16:35:20 -05:00
Robert Morris 8d4fbc6e2a Frans' proc_lock. 2020-11-03 15:02:08 -05:00
Robert Morris af570f582c free proc if kalloc fails 2020-11-01 11:11:38 -05:00
Robert Morris d7c0a1b7a7 hopefully make writei more correct 2020-10-23 10:18:30 -04:00
Robert Morris 147855e521 test for closed pipe or killed on every char, not just if pipe full 2020-10-22 06:36:36 -04:00
Robert Morris 4df1a265cb fix uart.c to work with UART_TX_BUF_SIZE == 1 2020-10-20 07:02:44 -04:00
Robert Morris 55ad99f729 Merge branch 'riscv' of g.csail.mit.edu:xv6-dev into riscv 2020-10-20 06:58:58 -04:00
Robert Morris 286b2f3c33 consolewrite does not need cons.lock -- can lead to sleep() with lock held 2020-10-20 06:55:51 -04:00
Fumiya Shigemitsu 05a7db1a0a Fix minor typos 2020-10-14 20:28:46 -04:00
Frans Kaashoek d4cecb269f kvmmake() makes a complete kernel page table, matching Figure 3.3 2020-10-14 20:28:16 -04:00
Robert Morris 21cfc97809 set riscv use-compressed-breakpoints yes 2020-10-14 20:28:16 -04:00
Fumiya Shigemitsu 93378618df Fix minor typos 2020-10-14 20:28:14 -04:00
Frans Kaashoek c64aa44d7b kvmmake() makes a complete kernel page table, matching Figure 3.3 2020-10-14 20:03:14 -04:00
Robert Morris 806580d642 set riscv use-compressed-breakpoints yes 2020-10-07 12:57:55 -04:00
Robert Morris bebecfd6fd more explicable scratch area size for machine-mode timer interrupts 2020-10-05 19:30:27 -04:00
Frans Kaashoek c199afe4c8 Don't map the CLINT, since it never used in the kernel in supervisor mode 2020-10-05 19:30:27 -04:00
Robert Morris c61cc69413 eliminate virtio DMA into kernel stacks. 2020-10-05 19:30:27 -04:00
Robert Morris 3092fe2c9e improve virtio_disk comments; bring it closer to wording in the spec 2020-10-05 19:30:27 -04:00
Robert Morris 548ffc97e1 don't unpin if recovering -- the resulting negative refcnt suppresses next unpin 2020-10-05 19:30:27 -04:00
Robert Morris aeaf610c67 avoid deadlock by disk intr acking interrupt first, then processing ring 2020-10-05 19:30:27 -04:00
Robert Morris 3c70be9070 often causes deadlock after a few minutes 2020-10-05 19:30:27 -04:00
Robert Morris 6c16759503 more explicable scratch area size for machine-mode timer interrupts 2020-10-05 15:28:01 -04:00
Frans Kaashoek 0c55849d28 Don't map the CLINT, since it never used in the kernel in supervisor mode 2020-10-05 09:18:23 -04:00
Robert Morris a9b3dd457c eliminate virtio DMA into kernel stacks. 2020-10-05 06:59:33 -04:00