Commit graph

1532 commits

Author SHA1 Message Date
Robert Morris
63ef3b8c9f slightly better comments 2022-08-22 13:49:15 -04:00
Frans Kaashoek
f2ee8690ad x 2022-08-17 20:38:11 -04:00
Frans Kaashoek
1d4c437ea1 Use uint64 (thanks carlclone and Harry Porter) 2022-08-17 20:37:22 -04:00
Frans Kaashoek
cef1b57d4a Compile user binary to map text without W and data without X
Use the flags in elf header to set vm permissions
Modify pgbug() so that usertests text segment is without W
Add test to check app cannot write text segment
2022-08-15 19:02:19 -04:00
Frans Kaashoek
2175c6b0b6 Run tests in the order in which they appear in the file 2022-08-15 19:01:34 -04:00
Frans Kaashoek
7a6d57235c Costmestic change (thanks Harry Porter) 2022-08-12 14:59:30 -04:00
Frans Kaashoek
899cc02660 Experiment with being more precise setting permissions for user pages.
Growing adds R|W pages (without X).  Exec() marks the stack only R|W.

Probably could setup permissions for text and data better if we call
ld with --no-omagic instead of -N.
2022-08-12 13:22:10 -04:00
Frans Kaashoek
8f58cc7df9 Cosmetic change (thanks Harry Porter) 2022-08-12 12:59:33 -04:00
Frans Kaashoek
62bc610424 cosmetic changes (thanks Harry Porter) 2022-08-12 11:47:39 -04:00
Frans Kaashoek
dd5a720044 cosmetic changes (thanks Harry Porter) 2022-08-12 10:57:16 -04:00
Frans Kaashoek
8bd04852c9 Delete rtcdate, which is a left-over from an old lab (thanks Harry Porter) 2022-08-12 09:43:18 -04:00
Frans Kaashoek
48d1a7ffa5 Add USED to states (thanks Harry Porter) 2022-08-12 09:14:54 -04:00
Frans Kaashoek
4f716c8550 Use p->lock to read p->killed 2022-08-11 14:22:00 -04:00
Frans Kaashoek
429c7b717e Use atomic store_n and load_n 2022-08-11 08:42:52 -04:00
Frans Kaashoek
975f3b31d3 Clean up using killed() 2022-08-11 07:23:17 -04:00
Frans Kaashoek
4087a6e7fc Read and write p->killed using atomics 2022-08-10 20:35:42 -04:00
Frans Kaashoek
b1fd09335a Merge remote-tracking branch 'g/riscv' into riscv 2022-08-10 10:31:54 -04:00
Robert Morris
e67cb408d4 x 2022-08-10 07:21:50 -04:00
Robert Morris
07cf0eb255 have sh print prompt with write, not printf, to make
system call lecture a little clearer.
2022-08-10 07:21:50 -04:00
Robert Morris
c908d20132 put walk() in defs.h so it's clear students can call it 2022-08-10 07:21:50 -04:00
Frans Kaashoek
143cde639d Merge remote-tracking branch 'github/riscv' into riscv 2022-08-10 07:18:39 -04:00
Robert Morris
e606f95459 x 2022-08-10 07:06:49 -04:00
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
311479ceb7 put walk() in defs.h so it's clear students can call it 2022-08-10 06:41:00 -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
Robert Morris
7d573bae2a Merge branch 'riscv' of g.csail.mit.edu:xv6-dev into riscv 2022-08-10 06:00:57 -04:00
Robert Morris
f4b3edf5ab comment nits 2022-08-10 06:00:40 -04:00
Robert Morris
535f1797f0 nothing much 2022-08-09 20:34:06 -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
WaheedHafez
9f3673c4da fix 'kfree' comment in kalloc.c
'kfree' has a parameter named 'pa' but referenced in the comment as 'v'.
2022-08-09 20:29:38 -04:00
mrm
c1c16269b1 fix comment in mkfs.c 2022-08-09 20:29:38 -04:00
John Jolly
62d8da06cd [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:27:46 -04:00
WaheedHafez
96da76a728 fix 'kfree' comment in kalloc.c
'kfree' has a parameter named 'pa' but referenced in the comment as 'v'.
2022-08-09 20:27:04 -04:00
mrm
f33f0d8622 fix comment in mkfs.c 2022-08-09 20:24:04 -04:00
Ravjot Singh Samra
a2e4051b99 Added missing va_end(). 2022-08-09 20:20:32 -04:00
Ravjot Singh Samra
431e21f7d4 Added missing va_end(). 2022-08-09 20:20:01 -04:00
Robert Morris
7d8bfdcbe3 nothing much 2022-08-09 15:11:25 -04:00
olf
dd431c400a README: Fix formatting in acknowledgements 2022-08-09 14:29:48 -04:00
Rahul Thomas
7c958af782 enable reading memory using gdb 2022-08-09 14:21:16 -04:00
Robert Morris
27a669ef25 comment nits 2022-08-09 14:17:46 -04:00
Robert Morris
af9abaca05 Merge branch 'riscv' of g.csail.mit.edu:xv6-dev into riscv 2022-08-09 13:41:51 -04:00
Robert Morris
3abd7a16dd comment 2022-08-09 13:41:45 -04:00
Robert Morris
cf0c095721 sscratch cleanup 2022-08-09 12:14:29 -04:00
Robert Morris
9fc9f755e1 adopt github PR98 (No need to store TRAPFRAME in sscratch register) 2022-08-09 11:44:02 -04:00
Robert Morris
ca6fc54934 tweak virtio comments 2022-08-08 11:10:54 -04:00
Frans Kaashoek
84fb6f3dc2 Merge branch 'virtio' into riscv 2022-08-02 11:44:40 -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
84a1bdb5aa Revert "Not treat infinite-recursion as error"
This reverts commit 759bb34113.
2022-08-02 09:37:30 -04:00
Dezhi Wu
759bb34113 Not treat infinite-recursion as error 2022-07-21 19:01:23 -04:00