Commit graph

1323 commits

Author SHA1 Message Date
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 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 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
Robert Morris 271d89ae30 improve virtio_disk comments; bring it closer to wording in the spec 2020-10-05 06:26:58 -04:00
Robert Morris da002a48fb don't unpin if recovering -- the resulting negative refcnt suppresses next unpin 2020-10-04 13:29:04 -04:00
Robert Morris 792d60e912 avoid deadlock by disk intr acking interrupt first, then processing ring 2020-10-04 09:21:03 -04:00
Robert Morris e3672e018a often causes deadlock after a few minutes 2020-10-04 08:44:32 -04:00
Matt Harvey b9359c3533 Corrects order of UART RX/TX interrupt enable bits
(per http://byterunner.com/16550.html and manually tested in qemu bare metal echo)
2020-10-03 16:35:47 -04:00
Fumiya Shigemitsu b96547403d Fix minor typos 2020-10-03 16:35:45 -04:00
Frans Kaashoek 1c4b582fc7 Clarify CLINT and PLIC acronym 2020-10-03 10:21:04 -04:00
Frans Kaashoek d9c7b13acc Add s to many printf statements that expect it (thanks Cece Chu)
Add dirtest to the list of tests
2020-10-02 07:52:14 -04:00
Robert Morris 788b4d1bc9 Merge branch 'riscv' of g.csail.mit.edu:xv6-dev into riscv 2020-09-30 17:16:05 -04:00
Frans Kaashoek 05074badc4 When either_copyin/out fails, return an error from write/read
Add a test to check that read/write return an error
2020-09-24 13:18:54 -04:00
Robert Morris 2055fe13ac better grind error messages 2020-09-06 14:20:18 -04:00
Frans Kaashoek e23d53f27f Delete doc dir because they take much space in student submissions 2020-08-28 16:22:39 -04:00
Robert Morris ffb2ee074a move panicked check to uart.c 2020-08-28 05:51:48 -04:00
Robert Morris db067d24da suppress write() output after panic() 2020-08-28 05:44:09 -04:00
Frans Kaashoek 2ec9c6ed66 Remove obselete ifdef that shouldn't have been there ever 2020-08-27 07:05:13 -04:00
Robert Morris d7e5f26910 fix usertests to pass all the riscv-sol-fall20 solutions. 2020-08-27 06:21:10 -04:00
Frans Kaashoek efaa7b8e2a Adjust a few prototypes to be explicit that they don't take arguments 2020-08-21 10:56:27 -04:00
Robert Morris 59a9863a17 touch sbrk()-allocated memory to make sure it exists 2020-08-19 13:10:14 -04:00
Robert Morris aefa2697d7 usertest for exec() out of memory recovery
and fix a few exec() bugs
2020-08-19 12:35:14 -04:00
Frans Kaashoek b33574df38 Use the major number defined in file.h. The minor number is ignored;
might as well use 0.
2020-08-18 20:48:53 -04:00
Frans Kaashoek 740d363736 Delete some obselete stuff 2020-08-17 14:25:12 -04:00
Robert Morris b154cf091c x 2020-08-15 05:46:32 -04:00
Robert Morris 4a87a0ae8b fix a bug in the out-of-memory handling code in exec 2020-08-13 14:10:58 -04:00
Robert Morris adee82c3e7 handle another out-of-memory in fork(). the policy here is not consistent,
since other calls (e.g. exec()) panic on out of memory.
2020-08-13 10:22:07 -04:00
Robert Morris 4c22c54480 try to handle a few of the possible out-of-memory errors in fork() 2020-08-13 09:19:23 -04:00
Robert Morris 70c6fe861e modify uvmunmap() to be in aligned pages
fix a bug in fork() recovering from out of memory
2020-08-13 08:46:28 -04:00
Robert Morris e1a2cd59fa Merge branch 'riscv' of g.csail.mit.edu:xv6-dev into riscv 2020-08-13 08:05:13 -04:00
Robert Morris d32eac366f pa isn't needed in the uvmunmap() loop 2020-08-13 08:04:56 -04:00
Frans Kaashoek 315c37c0f1 Update to the latest specs 2020-08-10 20:28:12 -04:00
Frans Kaashoek 468946781f copyright and 6.S081 2020-08-10 19:45:28 -04:00
Frans Kaashoek 737bd3a55d Ack bug finders. 2020-08-10 16:42:33 -04:00
Frans Kaashoek 2db95f08b1 Typo (thanks yt <jaichenhengjie@qq.com>) 2020-08-10 16:27:26 -04:00
Frans Kaashoek f14aa421c4 Generate initcode without compressed extensions 2020-08-10 13:59:40 -04:00
Asami Doi c24844714b update initcode to avoid using the compressed extension 2020-08-10 13:59:40 -04:00
Takahiro 9eff4b0871 Write interrupt ack register in virtio_disk_intr() 2020-08-10 13:59:40 -04:00
Jonathan Kimmitt b557e7c32e Update ramdisk.c
The qemu syntax for a ram disk was documented incorrectly. The documented syntax is here:
https://qemu.weilnetz.de/doc/qemu-doc.html
2020-08-10 13:59:40 -04:00
Fumiya Shigemitsu ffcb883adf Fix minor typos 2020-08-10 13:59:38 -04:00
Robert Morris 6cb6764bb1 test string system call arguments that cross over the end of the last page. 2020-08-07 16:56:00 -04:00
Robert Morris 234391b6bf test copyinstr()'s handling of the terminating null 2020-08-07 16:39:56 -04:00