Commit graph

1538 commits

Author SHA1 Message Date
Frans Kaashoek
9b9ab5e130 Remove redundant copyright, now there is a license file 2024-08-31 14:27:22 -04:00
Frans Kaashoek
dab0032eb5 x 2024-08-21 12:46:05 -04:00
Robert Morris
f8bd2f9739 synchronize usertests and exec with util lab 2024-08-10 05:08:04 -04:00
Frans Kaashoek
c28e177f8d Use BPB 2024-08-04 14:33:44 -04:00
Frans Kaashoek
44f1ffbe38 assert that length of filename <= DIRSIZ 2024-07-31 08:37:23 -04:00
Frans Kaashoek
1957d3e185 x 2024-07-31 08:20:08 -04:00
Frans Kaashoek
03c36a69a1 Update acks 2024-07-31 08:19:24 -04:00
Frans Kaashoek
e5d80dfee5 x 2024-07-26 20:10:08 -04:00
Frans Kaashoek
47cdb5f096 wfi to save CPU time on Athena 2024-07-26 20:08:40 -04:00
Frans Kaashoek
4d4d066d9f Thanks Taojie 2024-07-26 19:53:53 -04:00
Frans Kaashoek
c0d9f31eec Thanks Lucas Wolf 2024-07-26 19:47:40 -04:00
Frans Kaashoek
6cc3d4f7de Thanks phosphagos@github 2024-07-26 19:43:03 -04:00
Frans Kaashoek
a60bf178c6 Thanks segfault@github 2024-07-26 19:40:01 -04:00
Frans Kaashoek
271427920b Thanks Marcelo Arroyo 2024-07-26 19:35:03 -04:00
Frans Kaashoek
969f03dd8e Thanks snoire@github 2024-07-26 19:22:29 -04:00
Alissa Tung
e0c3ad4d47 Fix ref file name in user.h 2024-07-26 19:14:17 -04:00
RayAndrew
93c70ce0f9 Remove all files created during testing
Remove the following files to restore the state of the filesystem,
so subsequent tests don't fail unexpectedly by creating same filename.

q0             2 21 0
q?             2 22 0
q;             2 23 0
qC             2 24 0
q=             2 25 0
qA             2 26 0
q:             2 27 0
q<             2 28 0
q>             2 29 0
q@             2 30 0
qB             2 31 0
r0             2 32 0
r?             2 33 0
r;             2 34 0
rC             2 35 0
r=             2 36 0
rA             2 37 0
r:             2 38 0
r<             2 39 0
r>             2 40 0
r@             2 41 0
rB             2 42 0
s0             2 43 0
s?             2 44 0
s;             2 45 0
sC             2 46 0
s=             2 47 0
sA             2 48 0
s:             2 49 0
s<             2 50 0
s>             2 51 0
p?             2 52 0
p;             2 53 0
pC             2 54 0
p=             2 55 0
pA             2 56 0
p:             2 57 0
p<             2 58 0
p>             2 59 0
p@             2 60 0
pB             2 61 0
s@             2 62 0
sB             2 63 0
2024-07-26 19:11:05 -04:00
RayAndrew
7687b389c2 Report an error when n is not equal to MAXFILE
The variable `n` represents the number of blocks that have been read.
2024-07-26 19:10:21 -04:00
x653
72cb3849eb Update uart.c
added read of register ISR to clear interrupt source of UART16550.
2024-07-26 19:04:07 -04:00
Wenyang Duan
343d1ab482 Put parentheses around macro argument.
It might be too paranoid but makes it safe to deal with operators
with lower priorities than '+', '<<' for example.
2024-07-26 19:02:01 -04:00
Robert Morris
92e60dd833 switch from machine-mode to supervisor timer interrupts.
this requires qemu version >= 7.2.
2024-07-10 07:29:26 -04:00
Robert Morris
5a1a4d45a4 slightly more thorough testing that one can't write invalid addresses 2024-01-01 16:10:02 -05:00
Robert Morris
fe940f4d63 fix user.ld to get read-only text with riscv64-linux-gnu-ld 2.41 2024-01-01 13:10:35 -05:00
Robert Morris
dd2574bc10 tell gcc to check printf format strings
add %ld %lld %u %lu %llu %lx %llx to kernel and user printf
2023-12-31 12:21:46 -05:00
Robert Morris
2b552503c0 no need to check state == RUNNING in timer interrupt because
interrupts are always off (i.e. a lock is held) any time the
current process is not in RUNNING state.
2023-10-14 06:24:14 -04:00
Robert Morris
0c32c04b29 kernelvec only needs to save caller-saved registers 2023-10-14 06:23:09 -04:00
asselism
74c1eba516 Made va and size page aligned in mappages 2022-10-18 00:11:49 -04:00
Robert Morris
0802d56a9b x 2022-10-17 04:10:01 -04:00
Robert Morris
4a88273db5 oops. scheduler() inherits the interrupt status of the
most recent process to run, so it must explicitly
turn them on again. It would be better if cpu->intena
were really thread->intena.
2022-10-17 04:07:24 -04:00
Robert Morris
f376ad7f1f scheduler()'s intr_on() is in the wrong place, reflecting
the locking scheme from long ago.
2022-10-16 15:28:21 -04:00
Robert Morris
348cf7fee4 forkret first memory model 2022-10-12 13:07:55 -04:00
Robert Morris
d2b2dff749 fix copyout() to refuse to write a read-only page 2022-10-04 11:52:57 -04:00
Frans Kaashoek
989e8f2f1f Remove unused PLIC_M* macros 2022-09-18 16:32:21 -04:00
Frans Kaashoek
4b46c0c6eb Use O_RDONLY instead of 0 2022-09-11 13:51:11 -04:00
Robert Morris
463ae0abc3 handle negative arguments to sleep() a little better 2022-09-09 09:17:37 -04:00
Frans Kaashoek
f5b93ef12f Update acks
61810
2022-08-25 14:20:52 -04:00
Frans Kaashoek
3d6ce9b308 Separate tests in slow and quick. The slow tests run xv6 out of
memory, out of disk space, or test big directories.

Support -q option to run only the quick tests, which saves about
7mins.

Clean up driver by removing duplicated code.
2022-08-25 09:45:35 -04:00
Robert Morris
ed101befee comment the sfences 2022-08-24 13:47:47 -04:00
Robert Morris
581bc4cbd1 sfence before enabling paging 2022-08-24 13:42:59 -04:00
Robert Morris
29ce3161f8 Merge branch 'riscv' of g.csail.mit.edu:xv6-dev into riscv 2022-08-24 13:24:37 -04:00
Robert Morris
9c1b8a4eb0 sfence before writing satp, as well as after 2022-08-24 13:24:24 -04:00
Frans Kaashoek
cc486ddee0 Help students read this C syntax 2022-08-24 08:57:56 -04:00
Robert Morris
96047832c6 Merge branch 'riscv' of g.csail.mit.edu:xv6-dev into riscv 2022-08-23 12:26:39 -04:00
Robert Morris
7c1810e1ae tolerate running out of inodes 2022-08-23 12:26:26 -04:00
Frans Kaashoek
ac8c0bb177 x 2022-08-23 11:56:29 -04:00
Frans Kaashoek
948cfbdb1f Rename test to textwrite 2022-08-23 11:21:26 -04:00
Frans Kaashoek
858fc68bdf Linker script makes binaries bigger; use larger disk so that usertests
can run.

Must assumed_free in badwrite() be adjusted?
2022-08-23 11:19:33 -04:00
Frans Kaashoek
ccb7bd14c7 Merge branch 'riscv' into uvm-perm 2022-08-23 11:01:06 -04:00
Frans Kaashoek
4cd4d194b8 Use simple linker script to force data segment to be page aligned 2022-08-23 10:54:40 -04:00
Robert Morris
8621be8f3d tolerate out of disk when creating . and .. in mkdir() 2022-08-23 08:52:15 -04:00