Commit graph

1291 commits

Author SHA1 Message Date
Robert Morris a8dd44cf59 modify uvmunmap() to be in aligned pages
fix a bug in fork() recovering from out of memory
2020-08-17 08:18:23 -04:00
Robert Morris e283514ad0 pa isn't needed in the uvmunmap() loop 2020-08-17 08:18:23 -04:00
Frans Kaashoek 56e7cebdb9 Update to the latest specs 2020-08-10 20:28:47 -04:00
Frans Kaashoek 84dcf8a738 copyright and 6.S081 2020-08-10 19:41:57 -04:00
Frans Kaashoek fa71d7fca2 Ack bug finders. 2020-08-10 16:43:33 -04:00
Frans Kaashoek 5dace67371 Typo (thanks yt <jaichenhengjie@qq.com>) 2020-08-10 16:43:33 -04:00
Frans Kaashoek 96a20b0c0f Generate initcode without compressed extensions 2020-08-10 13:55:46 -04:00
Frans Kaashoek 0502342335
Merge pull request #9 from d0iasm/riscv
update initcode to avoid using the compressed extension
2020-08-10 13:54:58 -04:00
Frans Kaashoek 93ca5550b8
Merge pull request #10 from takahirox/VirtioInterruptAck
Write virtio interrupt ack register in virtio_disk_intr()
2020-08-10 13:24:57 -04:00
Frans Kaashoek 12c131de3e
Merge pull request #8 from rui314/cat-fix
cat should exit normally if reading from stdin
2020-08-10 13:14:41 -04:00
Frans Kaashoek d28c5d9837
Merge pull request #6 from jrrk2/riscv
Update ramdisk.c
2020-08-10 13:14:14 -04:00
Frans Kaashoek 6b593b9eae
Merge pull request #4 from 4ge32/riscv
Fix minor typos
2020-08-10 13:05:28 -04:00
Frans Kaashoek c31d35d803
Merge branch 'riscv' into riscv 2020-08-10 13:05:17 -04:00
Robert Morris d8fe1773b2 test string system call arguments that cross over the end of the last page. 2020-08-10 11:19:10 -04:00
Robert Morris 76d6c57ede test copyinstr()'s handling of the terminating null 2020-08-10 11:19:10 -04:00
Robert Morris e3b7058907 streamline copyin/copyout code in usertests
fix bugs in read/write return values when there's an error
2020-08-10 11:19:10 -04:00
Robert Morris a93321cb25 test pointer checking in copyin, copyout, copyinstr 2020-08-10 11:19:10 -04:00
Frans Kaashoek 1f555198d6 Change tf -> trapframe in a few comments 2020-08-10 11:19:10 -04:00
Robert Morris 7f35d7a14e modify each page in usertests countfree()
get rid of static for walk() and freewalk()
2020-08-10 11:19:10 -04:00
Robert Morris 2ae9c8e272 defines for UART register bits 2020-08-10 11:19:10 -04:00
Robert Morris 0f50e9527c fix printf() in interrupts 2020-08-10 11:19:10 -04:00
Robert Morris 27057bc9b4 interrupt-driven uart output, hopefully a nice example for teaching. 2020-08-10 11:19:10 -04:00
Robert Morris 1e72d5ca08 cpu->scheduler -> cpu->context to reduce confusion 2020-08-10 11:19:10 -04:00
Robert Morris 5494c91705 rename p->tf to p->trapframe, for consistency with p->context 2020-08-10 11:19:10 -04:00
Robert Morris 82981fab6b drop QEMUEXTRA 2020-08-10 11:19:10 -04:00
Robert Morris af9eb9114c make "echo hello > x" truncate file x. 2020-08-10 11:19:10 -04:00
Robert Morris 672217ae2a allow more files 2020-08-10 11:19:10 -04:00
Robert Morris b62d4d412b more grind 2020-08-10 11:19:10 -04:00
rtm 897f6f34dd yet another toolchain name 2020-08-10 11:19:10 -04:00
Takahiro 7a5fcb28b3 Write interrupt ack register in virtio_disk_intr() 2020-04-18 14:49:54 -07:00
Asami Doi 8b052656a0 update initcode to avoid using the compressed extension 2020-03-20 12:33:32 +09:00
Rui Ueyama 4cf0b0973e cat should exit normally if reading from stdin 2020-03-11 16:06:55 +09:00
Jonathan Kimmitt 2b040aa379
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-01-16 15:05:27 +00:00
Robert Morris 20f1dd9409 more grind 2019-11-07 06:44:23 -05:00
Robert Morris 16b3b63f06 grind: run parallel system calls forever 2019-11-06 11:18:43 -05:00
Robert Morris 028af27646 mention LRU list a bit more in comments. 2019-10-29 04:32:55 -04:00
Robert Morris 9de9211b11 usertests -c to repeat tests forever
detect memory leaks
no more "already ran user tests"
2019-10-28 05:58:28 -04:00
Robert Morris e7ffb74ad1 fix a potential memory leak 2019-10-27 13:36:46 -04:00
Robert Morris d9160fb4b9 nits 2019-10-27 08:03:19 -04:00
Anish Athalye f2ab0eb644 Clean up linker script
This patch does the following:

- Add .text.* to the .text section in the output
- Add an assertion that the trampoline does not overflow a page
- Add the .rodata section
- Make .sdata and .sdata.* (which is for small data) be absorbed into
  the .data section, because we don't need to distinguish between them;
  this prevents .sdata from appearing in the output
- Make the analogous change for .srodata and .sbss
- Make all the data sections 16-byte aligned

This patch also updates the .editorconfig for *.ld files.
2019-10-21 22:27:18 -04:00
Fumiya Shigemitsu 90eb90b5e2 Fix minor typos 2019-10-21 21:01:07 +09:00
Robert Morris 2821d43cc9 nits 2019-10-16 12:27:08 -04:00
Anish Athalye f2df0fa547 Fix ulib's memmove to handle overlap when src<dst 2019-10-08 21:24:03 -04:00
Anish Athalye 8509784d80 Add implementations of memcmp and memcpy to ulib
This is necessary because gcc may generate calls to memcmp, memset,
memcpy, and memmove when compiling with -nostdlib.
2019-10-08 21:18:54 -04:00
Robert Morris a52d296814 delete alarmtest from riscv 2019-10-03 15:09:31 -04:00
Robert Morris 56583b1402 updated alarmtest 2019-10-03 15:02:19 -04:00
Anish Athalye 78f863f8ae Add editorconfig 2019-09-30 20:38:17 -04:00
Anish Athalye d441674477 Make QEMU memory size match PHYSTOP 2019-09-30 20:32:57 -04:00
Robert Morris deaff5d8a6 no buf->qnext 2019-09-24 14:41:51 -04:00
Xi Wang 9ead904afe fix major validation
fileread/filewrite should validate major to avoid buffer overflows
or bogus function pointers.
2019-09-23 20:01:56 -04:00