Commit graph

1448 commits

Author SHA1 Message Date
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
Frans Kaashoek
a3f6d9fd1e cow moved to xv6-riscv-fall19 2019-08-26 21:16:33 -04:00
Frans Kaashoek
92c3c02098 RISC-V port doesn't borrow this code 2019-08-26 08:49:50 -04:00
Frans Kaashoek
510bcde894 Add major/minor/mkdev
Maybe apply this change to master
2019-08-23 19:41:53 -04:00
Frans Kaashoek
7241838b4c Move labs into 6.828 repo. The lab text isn't dependent on specific
xv6 code. Lab submission instructions etc. are likely going to be more
MIT 6.828 specific.
2019-08-20 20:23:18 -04:00
Frans Kaashoek
c612d452fd validateint doesn't test something interesting on RISC-V; delete it. 2019-08-20 13:04:12 -04:00
Frans Kaashoek
b564fca246 Rationalize some constants in usertests 2019-08-20 12:58:00 -04:00
Frans Kaashoek
d98ddadd79 Also release buffer on failed copyout 2019-08-20 12:46:56 -04:00
Frans Kaashoek
6005ef5a1c Release buffer also when copyin fails 2019-08-20 11:57:24 -04:00
Frans Kaashoek
d9818b89e1 512 -> BSIZE 2019-08-20 11:56:56 -04:00
Frans Kaashoek
a825f22cf8 Merge remote-tracking branch 'origin/master' into riscv 2019-08-19 19:27:29 -04:00
Dan Cross
82638c019c Avoid rereading the superblock in bfree
The superblock is read when the first process returns to
userspace (via the call to `iinit` from the first invocation of
`forkret`, when `first` is still set to 1) and cached in a
global; it is treated as immutable from that point on.  There is
no reason to re-read it in bfree.

Removing this call seems to have simply been missed in 8320d61b
when this general area was last touched.  Remove it now to avoid
potential confusion.

Signed-off-by: Dan Cross <cross@gajendra.net>
2019-08-19 19:25:43 -04:00
Frans Kaashoek
21ad8c76bc A few now unused DOC 2019-08-19 18:12:19 -04:00
Frans Kaashoek
ce565ae04a dan cross 2019-08-19 14:46:33 -04:00