Qingsong Chen
81898362b6
Add virtio legacy interface
2024-11-21 19:10:06 +08:00
jiangjianfeng
495c93c2ad
Refactor Rwlock to take type parameter
2024-11-21 15:46:10 +08:00
Jianfeng Jiang
c8c9b9753e
Make all network benchmark run with tap backend and vhost on
2024-11-20 20:24:03 +08:00
Cautreoxit
885950c2a4
Add VirtioBlockFeature to cache virtio-blk's features
2024-11-17 15:32:56 +08:00
Cautreoxit
3cb7f5b721
Rename the methods in the interface of VirtioTransport
2024-11-17 15:32:56 +08:00
Cautreoxit
32572e22d9
Implement flush for virtio-blk
2024-11-17 15:32:56 +08:00
jiangjianfeng
38682e3ed9
Assign callback to shared irq if there's no single irq line
2024-11-12 17:47:40 +08:00
jiangjianfeng
9965802f65
Disable send callback if sendqueue is not full
2024-11-12 17:47:40 +08:00
Shaowei Song
aa52e3980e
Minor fix on virtio-blk's config
2024-11-06 11:00:43 +08:00
Hsy-Intel
b7d101b98c
Fix MMIO read issue
2024-10-21 17:49:56 +08:00
jiangjianfeng
090149eed7
Add tcp latency test over virtio-net
2024-10-14 20:59:25 +08:00
Zhang Junyang
909639fd70
Separate `SegmentSlice` from `Segment`
2024-10-09 19:23:46 +08:00
Yuke Peng
7d5a2b7a79
[VirtIO] Correct the error code when device not match
2024-10-04 10:28:59 +08:00
jiangjianfeng
f793259512
Avoiding busy loop in sending packet and optimize device caps
2024-09-30 15:03:58 +08:00
Ruihan Li
51334c4a36
Clean up smoltcp dependencies
2024-09-26 15:22:16 +08:00
Ruihan Li
2bda8d17c4
Rename some misleading method names
2024-09-17 17:46:56 +08:00
Ruihan Li
cefeea7b50
Revise `IoMem::resize` into `IoMem::slice`
2024-09-17 17:46:56 +08:00
Ruihan Li
c8ba695c85
Implement `VmIoOnce` for `IoMem`
2024-09-17 17:46:56 +08:00
Cautreoxit
86f09eef75
Fix all spelling mistakes in history by typos tool
2024-08-27 12:19:48 +08:00
Yuke Peng
bb4751741a
Bump smoltcp to newest git version
2024-08-22 22:58:36 +08:00
Cautreoxit
c44447d54b
Refactor the API of spinlocks
2024-08-18 21:06:40 +08:00
Ruihan Li
b1ea422efa
Fix accesses to VirtIO queue DMA
2024-08-06 11:34:15 +08:00
Zhang Junyang
870d542f60
Remove the error of `BlkFeatures::MQ` to support multi-processor startup
...
Co-authored-by: Chuandong Li <lichuand@pku.edu.cn>
2024-07-30 10:24:09 +08:00
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