509 Commits

Author SHA1 Message Date
YanWQ-monad
82220748c0 Use a seedable RNG instead of getrandom crate 2024-05-17 10:28:18 +08:00
Jianfeng Jiang
b11e6d2d62 Add syscall accept4 2024-05-16 19:17:38 +08:00
Jianfeng Jiang
ea25157790 Support mmap shared anonymous memory 2024-05-16 19:13:32 +08:00
Jianfeng Jiang
89b21ba3b4 Add syscall rt_sigsuspend 2024-05-16 19:10:04 +08:00
Chen Chengjun
25b7007ffa Improve the read/write efficiency of Vmo 2024-05-16 18:58:51 +08:00
LI Qing
f4ea23b72c Revise the pages() method in the page cache to only return a reference 2024-05-16 18:54:39 +08:00
LI Qing
770a123415 Change the return value of dup() for Vmo<Rights> 2024-05-16 18:54:39 +08:00
LI Qing
e6b0fd8aa3 Optimize the RamFs to reduce the use of redundant locks 2024-05-16 18:54:39 +08:00
LI Qing
27bcece750 Optimize the ThreadStatus to be lock-free 2024-05-16 18:54:39 +08:00
LI Qing
0eaa6e637d Optimize the SigQueues to return early without lock 2024-05-16 18:54:39 +08:00
Zhenchen Wang
8bcadee540 Extract dentry.rs and mount.rs to path module, rename Dentry and DentryMnt and check usage of pub.
Signed-off-by: Zhenchen Wang <m202372036@hust.edu.cn>
2024-05-16 13:30:52 +08:00
Zhenchen Wang
8d18a12385 Refactor DentryMnt and fix some issues
Signed-off-by: Zhenchen Wang <m202372036@hust.edu.cn>
2024-05-16 13:30:52 +08:00
plucky
60fa4d104a Rename struct Path to struct DentryMnt
Signed-off-by: Zhenchen Wang <m202372036@hust.edu.cn>
2024-05-16 13:30:52 +08:00
plucky
6d486c6c01 Add struct Path for VFS
Signed-off-by: Zhenchen Wang <m202372036@hust.edu.cn>
2024-05-16 13:30:52 +08:00
Jianfeng Jiang
078f9a8891 Add syscall eventfd and eventfd2 2024-05-15 21:52:17 +08:00
Ruihan Li
4e1d98a323 Poll interfaces at the right time 2024-05-15 18:32:02 +08:00
Jianfeng Jiang
5189f889a3 Support Channel sending data which does not implement Copy 2024-05-13 20:04:09 +08:00
Zhang Junyang
989970429a Refactor the definition of page properties and permissions 2024-05-10 19:07:05 +08:00
Zhang Junyang
ef1ab72ebe Let page table own frames and remove MemorySet 2024-05-10 19:07:05 +08:00
Zhang Junyang
82bdadf754 Add a PTE extension mechanism 2024-05-10 19:07:05 +08:00
Zhang Junyang
24a868a670 Implement an efficient ranged page table 2024-05-10 19:07:05 +08:00
Chuandong Li
a6055bb092 Fix a deadlock issue in ramfs 2024-05-10 11:05:41 +08:00
Chen Chengjun
c3d0c59041 Fix the logics for the coarse resolution clock id in VDSO. 2024-05-09 17:34:10 +08:00
Chen Chengjun
ff3ff0a598 Fix the potential bugs of read and write in Vmar 2024-05-09 17:23:55 +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
LI Qing
8f3b1f8ddf Reduce some redundant usage of current! and current_thread! 2024-05-09 14:33:21 +08:00
LI Qing
98a2e623e2 Avoid computation of log message arguments in syscall handler 2024-05-09 14:33:21 +08:00
Zhang Junyang
da5873e990 Allow implementations for dynamically borrowed RwMutex guards 2024-05-09 10:41:21 +08:00
Zhang Junyang
d15b4d9115 Allow dynamically borrowed mutex guard 2024-05-09 10:41:21 +08:00
Zhang Junyang
11e4984df2 Allow dynamically borrowed RwLock guards 2024-05-09 10:41:21 +08:00
Fabing Li
c2d09675b3 Rename FileDescripter to FileDesc 2024-05-09 10:23:46 +08:00
Chen Chengjun
0594a73ac9 Improve the efficiency of unmap in VmMappingInner 2024-05-08 16:05:18 +08:00
Ruihan Li
ab87f473c4 Remove pointless error codes in unregister_observer 2024-05-08 15:48:55 +08:00
StanPlatinum
2b67dee1fc Add syscall epoll_pwait 2024-05-06 14:17:58 +08:00
Chen Chengjun
1435dd0896 Add syscall nanosleep 2024-05-06 14:15:24 +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
Hsy-Intel
5e127b2da0 Remove local tdx-guest crate 2024-04-29 10:13:04 +08:00
Chuandong Li
e77026c30e Fix some performance issue in VmMapping 2024-04-26 17:09:00 +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
Yingdi Shan
efa75a2f31 Improve the performance of page_cache by using fine-grained lock and allow page discarding 2024-04-26 11:37:55 +08:00
LI Qing
c44b2b35ff Fix the issue about acquiring Mutex after a RwLock in ramfs 2024-04-26 11:31:50 +08:00
Ruihan Li
698e748150 Set socket errors after connecting 2024-04-25 18:40:08 +08:00
Ruihan Li
27c5c27fd0 Implement non-blocking connect 2024-04-25 18:40:08 +08:00