Ruihan Li
87640d4b27
Drop `UnixSocketAddrBound` on `close()`
2025-09-10 20:01:30 +08:00
Ruihan Li
286d4d4466
Reorder methods and fix minor issues
2025-09-10 20:01:30 +08:00
Ruihan Li
75ca7e0377
Add the `arch::cpu::extension` module
2025-09-10 12:10:40 +08:00
Ruihan Li
9de70e38de
Add the `arch::cpu::cpuid` module
2025-09-10 12:10:40 +08:00
Ruihan Li
652657fba5
Drop duplicate public re-exports
2025-09-10 12:10:40 +08:00
Ruihan Li
c1b80f0f0f
Use `'static` for FS types
2025-09-08 14:40:08 +08:00
Ruihan Li
ef5318c000
Rename `*FS` to `*Fs`
2025-09-08 14:40:08 +08:00
Ruihan Li
bb6069d5bb
Clean up some FS APIs
2025-09-08 14:40:08 +08:00
Tate, Hongliang Tian
d4d84f18b7
Remove the outdated Github issue template for RFC
2025-09-05 17:40:05 +08:00
Tate, Hongliang Tian
f9425865b0
Add the first RFC, "RFC-0001 RFC process"
2025-09-05 17:40:05 +08:00
Tate, Hongliang Tian
e7733e94ee
Remove a placeholder RFC page
2025-09-05 17:40:05 +08:00
Ruihan Li
c289f96d23
Report `ENOBUFS` if netlink messages overrun
2025-09-05 10:51:48 +08:00
Ruihan Li
b57c94d05d
Unpack `MessageQueue`
2025-09-05 10:51:48 +08:00
zhuowei shao
f0935beb18
Extract futex double bucket locking operation
2025-09-05 10:49:45 +08:00
Zhe Tang
2796c8d1ad
Add unit tests for the newly implemented methods related to `IoMem`
2025-09-05 10:47:43 +08:00
Zhe Tang
b94ea9f174
Add kernel support for mapping via files
2025-09-05 10:47:43 +08:00
Zhe Tang
5022cadef1
Add the file-specific `mmap` interface
...
Co-authored-by: Wei Zhang <ruoyuan.zw@antgroup.com>
2025-09-05 10:47:43 +08:00
Zhe Tang
877581f1a6
Add OSTD support for mapping `IoMem` in userspace
2025-09-05 10:47:43 +08:00
Zhe Tang
5a38c61c49
Ensure that OSTD users cannot modify the `PrivilegedPageFlags` in `PageProperty`
2025-09-05 10:47:43 +08:00
Zhe Tang
e11227c8da
Move the `AVAIL1` flag from `PageFlags` to `PrivilegedPageFlags` in `PageProperty`
2025-09-05 10:47:43 +08:00
Ruihan Li
3b606f5b6c
Use `size_of`/`align_of` in the prelude
2025-09-04 09:26:56 +08:00
Ruihan Li
45b5bd39f1
Disable I/O APIC entries in initialization
2025-09-02 18:03:24 +08:00
Zhang Junyang
9e2d8e9f08
Use device addresses instead of physical addresses
2025-09-02 17:53:55 +08:00
Zhang Junyang
4e2bdc65de
Refactor implicit `Arc` APIs for DMA
2025-09-02 17:53:55 +08:00
Zhang Junyang
a6520880ab
Unify memory object slicing
2025-09-02 17:53:55 +08:00
Zhang Junyang
eb69aa4fb9
Unify address and size APIs for memory objects
2025-09-02 17:53:55 +08:00
Tao Su
89dfcbb569
Add `prctl`, `capget` and `capset` syscall limitation to the book
2025-09-02 17:40:56 +08:00
Tao Su
7c4b2899cc
Add clock and misc related syscall limitation to the book
2025-09-02 17:40:56 +08:00
Ruihan Li
419f31397f
Move checks from `syscall/` to `iovec.rs`
2025-09-02 15:43:09 +08:00
Ruihan Li
4e27e9d90b
Use "I/O" instead "IO"
2025-09-02 15:43:09 +08:00
jiangjianfeng
ef099996fc
Fix the unshare logic in syscall close_range
2025-09-02 09:47:41 +08:00
jiangjianfeng
b43047eedb
Add syscall setns
2025-09-02 09:47:41 +08:00
jiangjianfeng
cca73480c2
Add syscall unshare
2025-09-02 09:47:41 +08:00
jiangjianfeng
83b6e2da5c
Add basic namespace framework
2025-09-02 09:47:41 +08:00
jiangjianfeng
3cbc9b4bf7
openat should return ENOENT if path is empty
2025-09-02 09:45:42 +08:00
jiangjianfeng
09886fc15b
Write the supported cap version to user if capget version is unsupported
2025-09-02 09:45:42 +08:00
jiangjianfeng
6c5bcc420a
Don't panic on MADV_NOHUGEPAGE
2025-09-02 09:45:42 +08:00
Arthur Paulino
f56d2f3bad
`context.rs` enhancements
...
* Improve the phrasing of some docstrings and comments
* Add warning comments about attempts to validate memory addresses
at reader/writer instantiation time
* Create the `reader_writer` method for ergonomically instantiate
a reader/writer pair covering the same memory region. This method
is also slightly more efficient than calling `reader` and `writer`
separately
* Clean up `check_vaddr` for clarity and rename it to `check_vaddr_lowerbound`
for explicity
* Include the data length check before calling `check_vaddr_lowerbound`
in `atomic_load` and `atomic_fetch_update` for further consistency
with the delayed buffer validation
2025-09-01 11:16:37 +08:00
Zejun Zhao
f4b05597cd
Init vDSO singleton in the first kthread
2025-08-31 23:57:17 +08:00
Zejun Zhao
4b26eb05aa
Configure kernel stack size for release build based on architecture
2025-08-29 17:10:48 +08:00
Zejun Zhao
b9a0878d53
Add comment about .eh_frame_hdr in riscv64 linker script
2025-08-29 17:10:48 +08:00
Zejun Zhao
bf25806fca
Add an explicit end of call stack for x86_64 and loongarch64
2025-08-29 17:10:48 +08:00
Zejun Zhao
3b0666449f
Use rust-analyzer for riscv64 and loongarch64 target
2025-08-29 16:57:06 +08:00
Chen Chengjun
f8e4aefcca
Add tmpfs support by wrapping ramfs
2025-08-29 15:45:20 +08:00
Zejun Zhao
fc61f4d1b8
Use `IrqLine` abstraction for RISC-V timer interrupt
2025-08-29 10:49:48 +08:00
Yang Zhichao
d84ad988d4
Implement `EnvironFileOps` to handle `/proc/[pid]/environ`
2025-08-29 10:07:29 +08:00
Zejun Zhao
d3e27ae03a
Use vDSO for fallback of user-provided sa_restorer on RISC-V platforms
2025-08-28 17:35:55 +08:00
Zejun Zhao
aeaf103166
Add an explicit end of call stack for x86_64
2025-08-28 17:26:23 +08:00
Zejun Zhao
920ec7f521
Enable RISC-V stack unwinding on panic
2025-08-28 17:26:23 +08:00
Tao Su
05f053c56d
Add signal & timer related syscall limitations to the book
2025-08-28 16:17:14 +08:00