35 Commits

Author SHA1 Message Date
Shaowei Song
ff525112d0 Revise the BlockDevice trait 2024-07-29 13:54:13 +08:00
Jianfeng Jiang
f86583dbce Make essential changes for publishing OSTD 2024-07-18 18:18:05 +08:00
Ruihan Li
3d2a0c33af Clean up the virtio console IRQ handler a bit 2024-07-14 16:43:23 +08:00
Ruihan Li
a465ec1346 Work around a QEMU bug in virtio console pasting 2024-07-14 16:43:23 +08:00
Yuke Peng
d43fbd88ba Add documentation to bus 2024-07-09 19:42:15 +08:00
Jianfeng Jiang
59350a8578 Rename aster-frame to ostd 2024-06-27 15:45:49 +08:00
Anmin Liu
9f67fcdc58 Reuse Rxbuffer and update qemu_args.sh for vsock 2024-06-11 17:51:36 +08:00
Anmin Liu
646406115e Optimize vsock code structure 2024-06-11 17:51:36 +08:00
Anmin Liu
60dd17fdd3 Support calling from inside via vsock 2024-06-11 17:51:36 +08:00
Anmin Liu
48f69c25a9 Support nonblocking option 2024-06-11 17:51:36 +08:00
Anmin Liu
ad140cec3c Implement vsock socket layer 2024-06-11 17:51:36 +08:00
Anmin Liu
83a7937334 Make vsock device optional 2024-06-11 17:51:36 +08:00
Anmin Liu
be45f0ee72 Fix format and clippy errors 2024-06-11 17:51:36 +08:00
Anmin Liu
52f808e315 Implement vsock driver 2024-06-11 17:51:36 +08:00
LI Qing
c6aa9f9ee8 Limit the number of segments in single bio request 2024-06-05 16:13:59 +08:00
Zhang Junyang
7095b37e7e Refactor the source structure in aster_frame::mm 2024-06-03 22:16:02 +08:00
Zhang Junyang
14e1b1a9fc Rename various concepts related to memory management 2024-06-03 22:16:02 +08:00
Chen Chengjun
c02eacd50c Use deny(unsafe_code) instead of forbid(unsafe_code) 2024-05-31 16:05:58 +08:00
Zhang Junyang
d1990869ae Make ID allocator a separate crate and use it in the frame 2024-05-09 14:35:12 +08:00
Jianfeng Jiang
cd3faa8123 Inherit HasDaddr for reference type 2024-04-29 20:33:57 +08:00
Jianfeng Jiang
a482c87696 Remove add_buf from VirtQueue 2024-04-29 20:33:57 +08:00
Jianfeng Jiang
2256f6ae8a Extend Safeptr to support DmaStream 2024-04-29 20:33:57 +08:00
Jianfeng Jiang
345ab8f838 Add write_vals for VmIo 2024-04-29 20:33:57 +08:00
Jianfeng Jiang
abb377b695 Replace SpinLock with RwLock in driver callbacks 2024-04-29 20:33:57 +08:00
Jianfeng Jiang
cd1575bc6d Refactor virtio drivers with DMA APIs 2024-04-29 20:33:57 +08:00
LI Qing
c875201c3f Fix deadlocks that may arise after converting virtio-blk to async
The IRQ part of the driver must NOT share a SpinLock with
the normal part of the driver unless the SpinLock is acquired
with IRQ disabled in the task context.
2024-04-26 14:36:46 +08:00
LI Qing
349d7baa24 Fix the algorithm error for recycling descriptors in VirtQueue 2024-04-26 14:36:46 +08:00
LI Qing
b7131e721c Modify the virtio-blk to async 2024-04-26 14:36:46 +08:00
Fabing Li
dac41e9a2f Support T:?Sized as type parameter for Mutex, SpinLock, RwLock, and RwMutex 2024-04-17 08:51:59 +08:00
LI Qing
c3c6b0c19d Use Dma APIs for virtio-block driver 2024-04-11 15:22:18 +08:00
Jianfeng Jiang
d8a841f88a Add DmaBuf for DMA-capable memory areas 2024-04-11 15:22:18 +08:00
Yingdi Shan
650c7dfbad Add exFAT file system 2024-03-19 16:26:55 +08:00
Zhang Junyang
52f07458f7 Understanding memory space and move higher the stack 2024-03-19 16:19:54 +08:00
Zhang Junyang
b49e11a25e Fix all doc warnings 2024-03-17 19:12:33 +08:00
Zhang Junyang
e3c227ae06 Refactor project structure 2024-02-28 16:30:48 +08:00