Commit graph

1460 commits

Author SHA1 Message Date
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 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
Xi Wang cd00a8233a port virtio_disk to virtio spec 1.0+
The legacy interface is confusing. It's better to make virtio_disk
conform to the virtio spec. This is supported in QEMU since 4.2 by
disabling force-legacy for virtio-mmio.
2021-10-17 23:05:09 -07:00
Frans Kaashoek a1da53a5a1 update 2021-09-01 07:31:22 -04:00
Frans Kaashoek 8ca56e9e0b memmove(dst, src, 0) leads to overflow in while(n-- > 0) as n is uint64 (thanks
Matúš Jókay <matus.jokay@stuba.sk>)
2021-09-01 07:29:12 -04:00
Frans Kaashoek bf4816c9c6 Delete unused code (Jude Rich <juder11@gmail.com>) 2021-09-01 07:24:07 -04:00
Frans Kaashoek 02424b1f84 update 2021-08-31 21:06:53 -04:00
yzhu a103113db0 fix ld warning: undefined symbol _entry 2021-08-31 20:58:58 -04:00
Pavan Maddamsetti 840aae871f die 2021-08-31 20:57:03 -04:00
Pavan Maddamsetti e07ca66145 comment 2021-08-31 14:27:33 -04:00
l0stman 19ff379661 exec() only accepts MAXARG arguments
The terminating NULL string is already included (see sys_exec()).
2021-08-31 14:26:43 -04:00
l0stman 9195142959 Assert that the size in mappages() is always positive
If va % PGSIZE == 0 and size == 0, we have last < a at the start of
the loop so we might never terminate.  That being said, this
particular case couldn't be triggered for now.
2021-08-31 14:20:32 -04:00
kimjungwow f55def8a64 Change inode cache in main.c to inode table 2021-08-31 14:17:39 -04:00
amane-uehara dd6d5d0a41 I fixed a typo in the comment. 2021-08-31 14:16:59 -04:00
flespark 49f1e2f888 fix a invalid printf format string 2021-08-31 14:16:31 -04:00
OptimisticSide 1226b09dc4 Remove setproc prototype 2021-08-31 14:14:38 -04:00
Vadim Kolontsov f524198792 fix comment for 'sepc' 2021-08-31 14:12:36 -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
Jonathan Behrens 9655f71758 Configure PMP at boot 2021-08-30 16:27:52 -04:00
Robert Morris 6de0381d61 check for alignment just once 2021-08-10 07:12:41 -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
Frans Kaashoek 077323a8f0 Rename icache to itable
The inode cache isn't really a cache. The main purpose of it is to
allow for synchronization (locking individual inodes), providing
long-lived references to inodes, and ensuring that there is only inode
in memory.
2020-11-23 19:30:15 -05:00