Commit graph

81 commits

Author SHA1 Message Date
Robert Morris c3a17f454a have sh print prompt with write, not printf, to make
system call lecture a little clearer.
2022-08-10 06:42:17 -04:00
Robert Morris 76ad8e974f avoid user-level segfault if a process doesn't call exit() 2022-08-10 06:37:21 -04:00
Robert Morris 872fa88e8a tolerate running out of disk blocks 2022-08-10 06:13:52 -04:00
John Jolly 2462656f21 [user/ls]: List specific device file
When using the ls userspace program to list a specific device file,
nothing would be displayed. This was because ls only tests for T_FILE
and T_DIR. T_DEVICE files would fall through the case block.

Adding T_DEVICE to the T_FILE case allows a device file to be listed.

    $ ls console
    console        3 19 0
2022-08-09 20:29:38 -04:00
Frans Kaashoek 1b02b08db1 Mark runcmd with attribute noreturn, since it doesn't return
When compiling with gcc version 12, this change also avoids the
compiler warning "infinite recursion detected" for runcmd()
2022-08-02 09:38:22 -04:00
Frans Kaashoek bf4816c9c6 Delete unused code (Jude Rich <juder11@gmail.com>) 2021-09-01 07:24:07 -04:00
flespark 49f1e2f888 fix a invalid printf format string 2021-08-31 14:16:31 -04:00
FIXED-TERM Chen Ian (BT-CO/QMM5) 8d4ff0bc1e fix typos in user/usertest.c & kernel/log.c 2021-08-31 14:10:14 -04:00
Robert Morris 3b3f83f100 check that there's no panic if user process tries to write >= MAXVA 2021-08-06 11:06:24 -04:00
Robert Morris 08c9eda85f sync usertests 2021-07-02 14:24:45 -04:00
Robert Morris 1841baa3dd keep usertests.c in sync with riscv-sol-2020 2021-07-02 09:57:14 -04:00
Robert Morris 6e3f75c2aa suppress an incorrect error message in grind 2020-11-19 16:48:41 -05:00
Frans Kaashoek 60b63b9d07 x 2020-11-05 19:50:46 -05:00
Frans Kaashoek ef97f65025 kill/status test 2020-11-05 19:50:46 -05:00
Robert Morris aeaf610c67 avoid deadlock by disk intr acking interrupt first, then processing ring 2020-10-05 19:30:27 -04:00
Robert Morris 3c70be9070 often causes deadlock after a few minutes 2020-10-05 19:30:27 -04:00
Frans Kaashoek 8ffdfad990 Add s to many printf statements that expect it (thanks Cece Chu)
Add dirtest to the list of tests
2020-10-03 16:36:20 -04:00
Frans Kaashoek 6750608824 When either_copyin/out fails, return an error from write/read
Add a test to check that read/write return an error
2020-10-03 16:36:20 -04:00
Robert Morris 8c67f96b72 better grind error messages 2020-10-03 16:36:20 -04:00
Robert Morris 490f91ab53 move panicked check to uart.c 2020-08-28 09:00:41 -04:00
Frans Kaashoek de434fd933 Remove obselete ifdef that shouldn't have been there ever 2020-08-28 09:00:41 -04:00
Robert Morris 0b4e78f3a9 fix usertests to pass all the riscv-sol-fall20 solutions. 2020-08-28 09:00:41 -04:00
Robert Morris 2a4a8764a5 touch sbrk()-allocated memory to make sure it exists 2020-08-21 11:00:45 -04:00
Robert Morris 5860dcd07d usertest for exec() out of memory recovery
and fix a few exec() bugs
2020-08-21 11:00:45 -04:00
Frans Kaashoek d4d487731a Use the major number defined in file.h. The minor number is ignored;
might as well use 0.
2020-08-21 11:00:45 -04:00
Robert Morris 95dad4c061 x 2020-08-17 08:18:23 -04:00
Robert Morris 8dc71a257d 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-17 08:18:23 -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
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 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
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 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 d9160fb4b9 nits 2019-10-27 08:03:19 -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
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