Commit Graph

1301 Commits

Author SHA1 Message Date
jiangjianfeng 808d298938 Drop option lock before polling iface 2025-11-24 12:31:38 +08:00
Cautreoxit 869e04f6bb Add evdev module 2025-11-24 11:42:36 +08:00
Chen Chengjun 74dd519a10 Support PR_SET/GET_SECUREBITS 2025-11-21 19:34:04 +08:00
Qingsong Chen 76c7752130 Separate inode and opened file types for BlockFile 2025-11-20 19:40:40 +08:00
Qingsong Chen e407dc7ce9 Refactor mem/misc char devices 2025-11-20 19:40:40 +08:00
Chen Chengjun 6df2af2e17 Fix some mount-related bugs 2025-11-20 18:22:26 +08:00
Qingsong Chen 7876b7127d Fix virtio-block request ID exhaustion panics with SyncIdAlloc 2025-11-20 10:43:24 +08:00
Qingsong Chen 9e2f5adf9b Add partition support for block device 2025-11-20 10:43:24 +08:00
Qingsong Chen d954e3d006 Move ranged integer to aster-util crate 2025-11-20 10:43:24 +08:00
Chen Chengjun 7305d389f0 Refactor the timer module to solve race conditions and support fdinfo for timerfd files 2025-11-19 21:09:50 +08:00
Chen Chengjun 59cd3bd61d Support generating fdinfo for most of the existing FileLikes 2025-11-19 21:09:50 +08:00
Chen Chengjun 61a5bb7241 Add fdinfo files to proc filesystem 2025-11-19 21:09:50 +08:00
Ruihan Li 668876aeee Check the existence of i8042 and RTC CMOS 2025-11-19 15:39:49 +08:00
Ruihan Li 9a8e6fd372 Simplify the code in `aster-time` 2025-11-19 15:39:49 +08:00
Ruihan Li bbe0e3f3bb Reimplement `RtcCmos` 2025-11-19 15:39:49 +08:00
Ruihan Li 21365dd0bd Fix some behavior about `seek()` 2025-11-19 10:33:51 +08:00
Ruihan Li 24502ac3d4 Add `InodeIo` to simplify `FileIo` and `Inode` 2025-11-19 10:33:51 +08:00
Ruihan Li 08dfe533c4 Use `Box<FileIo>` instead of `Arc<FileIo>` 2025-11-19 10:33:51 +08:00
jiangjianfeng 63354d670e Support mknod for /dev/full and /dev/tty0 2025-11-18 17:32:34 +08:00
Ruihan Li 7ebee6d8a1 Fix TTY's HUP events 2025-11-18 14:49:19 +08:00
jiangjianfeng 2f568d5e73 Read pty master should block if no pty slave is opened 2025-11-18 09:48:32 +08:00
Wang Siyuan 151d7ab1bf Refactor procfs with `VmPrinter` 2025-11-17 16:42:08 +08:00
Tao Su 83176020f2 Invoke get_report() using private memory 2025-11-17 15:26:45 +08:00
Ruihan Li 0636e1048e Clarify how `Path` inherits methods 2025-11-17 11:25:55 +08:00
Wang Siyuan 35ab40057a Support stopping states in `proc/pid/stat` 2025-11-14 14:34:04 +08:00
Wang Siyuan 7a7e62b318 Support sleeping states in `proc/pid/stat` 2025-11-14 14:34:04 +08:00
Wang Siyuan 3ffa253947 Store `Weak<Task>` in `PosixThread` 2025-11-14 14:34:04 +08:00
Ruihan Li 58070c4107 Introduce `CopyCompat` 2025-11-14 14:20:30 +08:00
Ruihan Li 4af21521af Fix error codes in various `sched_*` syscalls 2025-11-14 14:20:30 +08:00
Zhang Junyang 8148072984 Upgrade the `riscv` crate to fix the ssoft handling
3c61863630
2025-11-14 10:14:03 +08:00
Qingsong Chen bb48b3814f Move DeviceId to separate device-id crate 2025-11-13 11:04:30 +08:00
Wang Siyuan 9c6dbcee79 Minor cleanup 2025-11-13 09:55:53 +08:00
Wang Siyuan 456cafbc8e Add access mode checks for `MemfdFile` 2025-11-13 09:55:53 +08:00
Wang Siyuan 291c42c9fd Enable some gvisor tests of `memfd_test` 2025-11-13 09:55:53 +08:00
Wang Siyuan 805e2a7c89 Remove inode-specific methods from `FileLike` 2025-11-13 09:55:53 +08:00
Wang Siyuan 4d7958c18e Add `PathOrInode` to support looking up an inode without a `Path`
Also supports opening a memfd from `/proc/[pid]/fd/[fd]`
2025-11-13 09:55:53 +08:00
Wang Siyuan 147a622aa1 Add `SymbolicLink` to support symbol links under `/proc` 2025-11-13 09:55:53 +08:00
Wang Siyuan 7f41bd3ba7 Rename `as_inode_or_err` to `as_inode_handle_or_err` 2025-11-13 09:55:53 +08:00
Wang Siyuan e85879025e Add a method `inode` to the trait `FileLike` 2025-11-13 09:55:53 +08:00
Wang Siyuan 0a0ced99e7 Add `PseudoFs` and `PseudoInode` 2025-11-13 09:55:53 +08:00
Wang Siyuan 1a3ab8aaf8 `MemfdInode`s should be linked to a tmpfs 2025-11-13 09:55:53 +08:00
Ruihan Li f57a54aa0d Remove `AccessMode` from `InodeHandle` 2025-11-12 18:19:08 +08:00
Ruihan Li 722efc62ca Remove `inode_handle/static_cap.rs` 2025-11-12 18:19:08 +08:00
Ruihan Li 277b5b5c24 Fix how O_PATH interacts with other flags 2025-11-12 18:19:08 +08:00
Ruihan Li 25beca462d Add regression tests 2025-11-12 18:19:08 +08:00
Ruihan Li eaeba41f5e Refine some access checks 2025-11-12 18:19:08 +08:00
Ruihan Li b4385ddc3d Simplify some memfd code 2025-11-12 18:19:08 +08:00
wyt8 9a0f63b33e Modify the import of modules in kernel to remove dependencies of lib.rs 2025-11-10 10:53:08 +08:00
Tate, Hongliang Tian 06f798908a Extract kernel initialization code into a module 2025-11-10 10:53:08 +08:00
wyt8 05287667c3 Ensure the idle tasks do not sleep or block 2025-11-10 10:53:08 +08:00