Commit Graph

806 Commits

Author SHA1 Message Date
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
LI Qing bc1bf4cb53 Add the file_io microbenchmark 2024-05-16 13:15:09 +08:00
Jianfeng Jiang 078f9a8891 Add syscall eventfd and eventfd2 2024-05-15 21:52:17 +08:00
YanWQ-monad ccc4e6ec6b Move whole kernel ELF to VMA 2024-05-15 21:31:09 +08:00
Ruihan Li 4e1d98a323 Poll interfaces at the right time 2024-05-15 18:32:02 +08:00
Ruihan Li dbc234ada6 Rename `cx_ptr` to `ctx_ptr` 2024-05-14 10:00:59 +08:00
Ruihan Li 47fe10f17b Avoid poorly chosen variable names 2024-05-14 10:00:59 +08:00
Ruihan Li a215cb54d9 Use `UnsafeCell` to store `UserContext` 2024-05-14 10:00:59 +08:00
Jianfeng Jiang 5189f889a3 Support Channel sending data which does not implement Copy 2024-05-13 20:04:09 +08:00
Ruihan Li 83c2aba0b0 Use `SpinLock` to protect `PROCESSOR` 2024-05-13 19:39:50 +08:00
LI Qing 81cca42205 Refine `WaitQueue` with fast path to return early 2024-05-11 11:11:12 +08:00
Zhang Junyang 035e12a4bd Identify the page table free-reuse-then-read problem and feature gate it 2024-05-10 19:07:05 +08:00
Zhang Junyang 679e5dac68 Remove the VA to PA API and tidy up kernel space 2024-05-10 19:07:05 +08:00
Zhang Junyang cf5cfb3475 Enable global page and add a global TLB flushing function 2024-05-10 19:07:05 +08:00
Zhang Junyang 989970429a Refactor the definition of page properties and permissions 2024-05-10 19:07:05 +08:00
Zhang Junyang 351e08c897 Escalate page table consts to be paging consts 2024-05-10 19:07:05 +08:00
Zhang Junyang 2dbeb92326 Implement fine grained locks for the page table and adjust APIs 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 b6f8661abb Add unit tests for the page table 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 513ac97969 Add shortcuts for writing page table protections 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
Chen Chengjun c9cfb98746 Improve the efficiency of fill method in VmWriter 2024-05-10 11:08:51 +08:00
Chuandong Li a6055bb092 Fix a deadlock issue in ramfs 2024-05-10 11:05:41 +08:00
Jianfeng Jiang 7a82132ecc Bump version in the documentation 2024-05-10 10:47:53 +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
Zhang Junyang 3dd6f71936 Allow dynamically borrowed spinlock guard 2024-05-09 10:41:21 +08:00
Fabing Li c2d09675b3 Rename FileDescripter to FileDesc 2024-05-09 10:23:46 +08:00
Weijie Liu 5d28f29a11 Fix syscall list in docs 2024-05-09 10:20:48 +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
Zhang Junyang 57f4ed778d Update proper dep for builder in OSDK and allow publishing 2024-05-08 15:41:32 +08:00
Jianfeng Jiang bd0611f1e3 Enable lto when building release 2024-05-08 11:03:53 +08:00
Fabing Li fa4ba08862 Move mongoose library to regression 2024-05-08 11:02:28 +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
Zhang Junyang ee740020d0 Use `clone_from` in OSDK instead of assigning clones 2024-05-06 12:19:16 +08:00
Zhang Junyang b4a357a971 Separate OSDK lint from kernel lint 2024-05-06 12:19:16 +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