summaryrefslogtreecommitdiff
path: root/kernel
AgeCommit message (Collapse)Author
2021-07-28Fixes from lfcode.cariscvAditya Naik
PMP enforecement from Qemu breaks boot cycle. This fix is from upstream repo here: https://github.com/lf-/xv6-riscv/
2021-01-31With only RISCV64-I extensionAditya Naik
2020-11-23Rename icache to itableFrans Kaashoek
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-05Be principled: acquire lock firstFrans Kaashoek
2020-11-05proc_tree_lock -> wait_lockRobert Morris
2020-11-05don't over-lock in exit()Robert Morris
2020-11-05oopsRobert Morris
2020-11-05Frans' proc_lock.Robert Morris
2020-11-05free proc if kalloc failsRobert Morris
2020-11-05hopefully make writei more correctRobert Morris
2020-11-05test for closed pipe or killed on every char, not just if pipe fullRobert Morris
2020-11-05fix uart.c to work with UART_TX_BUF_SIZE == 1Robert Morris
2020-11-05consolewrite does not need cons.lock -- can lead to sleep() with lock heldRobert Morris
2020-10-14kvmmake() makes a complete kernel page table, matching Figure 3.3Frans Kaashoek
2020-10-14Fix minor typosFumiya Shigemitsu
2020-10-05more explicable scratch area size for machine-mode timer interruptsRobert Morris
2020-10-05Don't map the CLINT, since it never used in the kernel in supervisor modeFrans Kaashoek
2020-10-05eliminate virtio DMA into kernel stacks.Robert Morris
2020-10-05improve virtio_disk comments; bring it closer to wording in the specRobert Morris
2020-10-05don't unpin if recovering -- the resulting negative refcnt suppresses next unpinRobert Morris
2020-10-05avoid deadlock by disk intr acking interrupt first, then processing ringRobert Morris
2020-10-03Fix minor typosFumiya Shigemitsu
2020-10-03Clarify CLINT and PLIC acronymFrans Kaashoek
2020-10-03When either_copyin/out fails, return an error from write/readFrans Kaashoek
Add a test to check that read/write return an error
2020-09-14Corrects order of UART RX/TX interrupt enable bitsMatt Harvey
(per http://byterunner.com/16550.html and manually tested in qemu bare metal echo)
2020-08-28move panicked check to uart.cRobert Morris
2020-08-28suppress write() output after panic()Robert Morris
2020-08-21Adjust a few prototypes to be explicit that they don't take argumentsFrans Kaashoek
2020-08-21usertest for exec() out of memory recoveryRobert Morris
and fix a few exec() bugs
2020-08-17xRobert Morris
2020-08-17fix a bug in the out-of-memory handling code in execRobert Morris
2020-08-17handle another out-of-memory in fork(). the policy here is not consistent,Robert Morris
since other calls (e.g. exec()) panic on out of memory.
2020-08-17try to handle a few of the possible out-of-memory errors in fork()Robert Morris
2020-08-17modify uvmunmap() to be in aligned pagesRobert Morris
fix a bug in fork() recovering from out of memory
2020-08-17pa isn't needed in the uvmunmap() loopRobert Morris
2020-08-10Typo (thanks yt <jaichenhengjie@qq.com>)Frans Kaashoek
2020-08-10Merge pull request #9 from d0iasm/riscvFrans Kaashoek
update initcode to avoid using the compressed extension
2020-08-10Merge pull request #10 from takahirox/VirtioInterruptAckFrans Kaashoek
Write virtio interrupt ack register in virtio_disk_intr()
2020-08-10Merge pull request #6 from jrrk2/riscvFrans Kaashoek
Update ramdisk.c
2020-08-10Merge branch 'riscv' into riscvFrans Kaashoek
2020-08-10streamline copyin/copyout code in usertestsRobert Morris
fix bugs in read/write return values when there's an error
2020-08-10Change tf -> trapframe in a few commentsFrans Kaashoek
2020-08-10modify each page in usertests countfree()Robert Morris
get rid of static for walk() and freewalk()
2020-08-10defines for UART register bitsRobert Morris
2020-08-10fix printf() in interruptsRobert Morris
2020-08-10interrupt-driven uart output, hopefully a nice example for teaching.Robert Morris
2020-08-10cpu->scheduler -> cpu->context to reduce confusionRobert Morris
2020-08-10rename p->tf to p->trapframe, for consistency with p->contextRobert Morris
2020-08-10make "echo hello > x" truncate file x.Robert Morris
2020-04-18Write interrupt ack register in virtio_disk_intr()Takahiro