Commit Graph

1119 Commits

Author SHA1 Message Date
Yuke Peng bb15d4591a Extract `PciDeviceLocation` in ostd into PCI component 2025-09-21 10:32:23 +08:00
Yuke Peng f34c37f6c4 Acquire IoMem only when r/w happened 2025-09-21 10:32:23 +08:00
Yuke Peng d60e2e2a6b Align cap_ptr in PCI 2025-09-21 10:32:23 +08:00
Yuke Peng 48376efa52 Extract MSIX in ostd into PCI component 2025-09-21 10:32:23 +08:00
Yuke Peng 1e324d2228 Fix import error in PCI component 2025-09-21 10:32:23 +08:00
Yuke Peng 28d4d0e3ad Use `IoMem::acquire` to get the MemoryBar access 2025-09-21 10:32:23 +08:00
Yuke Peng faee9e9808 Disable IoPort read/write in IoBar 2025-09-21 10:32:23 +08:00
Yuke Peng 1a86bd2471 Move PCI bus in OSTD into PCI component 2025-09-21 10:32:23 +08:00
Yuke Peng f2d1cbdf57 Init PCI compoment 2025-09-21 10:32:23 +08:00
Ruihan Li 391f11f1aa Make per-CPU callbacks explicit 2025-09-20 11:50:50 +08:00
Ruihan Li 421f36cc26 Make timer callbacks arch-agnostic 2025-09-20 11:50:50 +08:00
Tate, Hongliang Tian 4b87dab86e Unify CPU arch-specific logic that determines if the kernel is interrupted 2025-09-19 15:05:50 +08:00
Tate, Hongliang Tian ee21f2bdb6 Refactor OSTD irq module for improved clarity 2025-09-19 15:05:50 +08:00
Tate, Hongliang Tian c485d512f6 Rename ostd::trap to ostd::irq 2025-09-19 15:05:50 +08:00
Zejun Zhao 2e46edb68d Register some timer callbacks on all CPUs 2025-09-19 14:40:33 +08:00
Zejun Zhao cf9c45a46c Implement renameat2 system call 2025-09-19 12:00:01 +08:00
Wang Siyuan 70b26f824d Support `RUSAGE_CHILDREN` option for `getrusage` 2025-09-18 17:20:07 +08:00
Ruihan Li c90c081e86 Fix bugs due to bad `ReadCString` APIs
Co-authored-by: Wang Siyuan <wsy@stu.pku.edu.cn>
2025-09-18 17:19:51 +08:00
Ruihan Li 3acdc1e8b0 Move `ReadCString` to `util/`
Co-authored-by: Wang Siyuan <wsy@stu.pku.edu.cn>
2025-09-18 17:19:51 +08:00
Ruihan Li d7334118f3 Respond error segments for netlink parse errors 2025-09-18 17:19:51 +08:00
Qingsong Chen 8bc0013801 Add stage support for init_component macro 2025-09-18 12:11:44 +08:00
Tate, Hongliang Tian 8d2fec7873 Introduce ASCII art representations of the Asterinas logo 2025-09-17 22:44:40 +08:00
Qingsong Chen f6a55e0af3 Handle 8-bit/24-bit ANSI color codes for framebuffer 2025-09-17 22:43:22 +08:00
Wang Siyuan 46aa437c87 Add `/proc/pid/oom_score_adj` 2025-09-15 13:28:23 +08:00
Wang Siyuan b42605af6b Support configurable file modes within procfs 2025-09-15 13:28:23 +08:00
Chen Chengjun c2a224e757 Fix the bug in is_mount_root method 2025-09-12 17:06:58 +08:00
Qingsong Chen 96adc3dc82 Add /proc/cmdline support 2025-09-12 08:45:32 +08:00
Chen Chengjun 8c36964bb9 Introduce VmPrinter to write kernel generated data 2025-09-10 21:07:14 +08:00
Chen Chengjun 12f2f6bb54 Correct the misuse of some AttributeErrors 2025-09-10 21:07:14 +08:00
Ruihan Li fe1d4fe15f Support UNIX datagram sockets 2025-09-10 20:01:30 +08:00
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 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
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 5a38c61c49 Ensure that OSTD users cannot modify the `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
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
Ruihan Li 419f31397f Move checks from `syscall/` to `iovec.rs` 2025-09-02 15:43:09 +08:00