Commit graph

1261 commits

Author SHA1 Message Date
Robert Morris c98e1afe79 allow more files 2019-11-08 13:21:06 -05:00
Robert Morris 507028de9d more grind 2019-11-07 09:46:20 -05:00
Robert Morris d1b8b19cd3 Merge branch 'riscv' of g.csail.mit.edu:xv6-dev into riscv 2019-11-07 06:44:33 -05:00
Robert Morris 20f1dd9409 more grind 2019-11-07 06:44:23 -05:00
rtm 73e931fd42 yet another toolchain name 2019-11-07 06:43:38 -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
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
Robert Morris 37df68e5de story is more complex than I thought. 2019-09-23 07:24:41 -04:00
Robert Morris d175beadf5 bug fix: reparent() sometimes deadlocked
bug fix: exit() sometimes released a different parent lock than it acquired
usertests
2019-09-23 06:50:25 -04:00
Frans Kaashoek 843ce77765 Stress copyin for the full allocated page (good for lazy lab). 2019-09-21 17:28:18 -04:00
Robert Morris d940fd122d don't leak memory if exec() arguments are invalid. 2019-09-21 04:54:25 -04:00
Frans Kaashoek 6b79ee69b7 Refactor big sbrk test in smaller, easier-to-understand tests 2019-09-21 02:07:24 -04:00
Frans Kaashoek ee67dbd211 Not much: factor sbrksimple from big sbrktest 2019-09-20 17:08:13 -04:00
Robert Morris 7c7ed20822 don't leak a file system block if the buf argument to write is invalid
and a usertest
2019-09-20 13:09:26 -04:00
Robert Morris e1a37303c8 yet another sbrk() bug fix, and usertest 2019-09-20 12:13:57 -04:00
Robert Morris 4de161f973 don't panic if a program frees all its memory with sbrk().
if a program sbrk()'s to a non-page-boundary, don't free that page.
corresponding usertests.
2019-09-20 11:35:27 -04:00
Robert Morris ca30cac702 more incorrect cast to uint 2019-09-20 10:27:03 -04:00
Robert Morris 402e7b5605 fix a potential kernel crash
add a regression test for it
2019-09-20 09:41:03 -04:00
Robert Morris 57e40a0204 nits 2019-09-20 06:02:47 -04:00
Frans Kaashoek ba1c42849a print name at start of test 2019-09-19 15:39:05 -04:00
Frans Kaashoek 25e6803e17 a comment 2019-09-19 15:22:45 -04:00
Frans Kaashoek 3f6e372a29 make exec test self contained 2019-09-19 15:14:52 -04:00
Frans Kaashoek f6a37c17f2 Standarize the way tests are run and report errors
Support running one test, by specifying the name as a command argument to usertests
2019-09-19 06:58:28 -04:00
Robert Morris 0d01de2a32 Merge branch 'riscv' of g.csail.mit.edu:xv6-dev into riscv 2019-09-17 06:08:10 -04:00
Robert Morris 2df42355f7 all of PTE_FLAGS 2019-09-17 06:07:58 -04:00
Xi Wang b150908354 add `-bios none' to silence qemu
QEMU 4.1+ emits warnings if -bios is not given, as newer versions
will load the OpenSBI firmware in this case.  Pass `-bios none' to
avoid this issue.
2019-09-13 17:23:36 -04:00
Robert Morris 036b5edf12 set architecture riscv:rv64 -- fix gdb trampoline disassembly, thanks jonathan 2019-09-12 10:48:48 -04:00
Robert Morris 35010f0d0f error exit status is 1 2019-09-11 10:04:40 -04:00
Frans Kaashoek 7e6c37e67e Support exit status for exit/wait
One test case for returning a exit status
Passes usertests, but haven't used it to simplify tests
2019-09-10 12:30:10 -04:00
Frans Kaashoek 035cca95fe Make the end variable be really at the end of bss, and delete + 4096 in freerange() 2019-09-08 15:19:19 -04:00
Robert Morris e5b7fa62cc thanks to Anthony Coulter 2019-09-08 06:51:58 -04:00
Robert Morris fc337af2b6 fix a grep bug 2019-09-05 16:50:55 -04:00
Robert Morris c0beeccb1b have echo use FD 1 for clarity 2019-09-04 10:12:53 -04:00
Robert Morris 25e113138d sfence.vma in trampoline as well 2019-09-03 16:29:48 -04:00
Robert Morris 9b9e2dd0f2 fix sfence_vma comment 2019-09-03 16:25:11 -04:00
Robert Morris 86a1d4b295 sfence_vma after satp 2019-09-03 15:45:07 -04:00
Robert Morris 64b93d175a user printf(1 -> printf( 2019-08-27 13:13:03 -04:00