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
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
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