341 Commits

Author SHA1 Message Date
Yuke Peng
60ef523aaf Implement semctl syscall 2024-08-18 16:37:39 +08:00
Yuke Peng
9d83e76931 Implement semop and semtimedop syscall 2024-08-18 16:37:39 +08:00
Yuke Peng
4530253a99 Implement semget syscall 2024-08-18 16:37:39 +08:00
Yuke Peng
b7a5f797de Add System V semaphore basic support 2024-08-18 16:37:39 +08:00
Fabing Li
ce2af1eb05 Add flock and sys_flock 2024-08-17 18:18:23 +08:00
Fabing Li
cbd8879243 Add range lock and sys_fcntl 2024-08-17 18:18:23 +08:00
Fabing Li
4a2da992a6 Add Extension implementation on inode for lock storing 2024-08-17 18:18:23 +08:00
Chen Chengjun
9c7fd8fef5 Add dummy msync 2024-08-17 18:07:09 +08:00
Marsman1996
cf30599729 Propagate errors of futex operations when used in futex syscall instead of panic on them
by @jellllly420
2024-08-17 18:01:32 +08:00
Marsman1996
4c1f6a4e32 Fix panic in futex and rt_sigprocmask 2024-08-17 18:01:32 +08:00
Chen Chengjun
364ef48e2f Fix a concurrency bug in clocksource 2024-08-17 17:57:26 +08:00
Jianfeng Jiang
0291b5dc6b Optimize the latency of lmbench-select-file 2024-08-16 11:19:29 +08:00
Marsman1996
5b5f9cffd1 Fix panic when transfer how to enum in sys_rt_sigprocmask() 2024-08-16 11:14:11 +08:00
Chen Chengjun
2ca7b28bbc Refactor the elf loading logics 2024-08-16 10:45:16 +08:00
Chen Chengjun
950fbc131b Implement resize mapping and modify the brk implementation 2024-08-16 10:45:16 +08:00
Chen Chengjun
4bf355af50 Refactor mmap and support shared filebacked mmap 2024-08-16 10:45:16 +08:00
Chen Chengjun
19184d5c3d Remove the concept of child VMOs and clean-up VMO implementations 2024-08-16 10:45:16 +08:00
Chen Chengjun
9f9169adfe Modify the Vmar APIs to fit the modifications of VmMapping 2024-08-16 10:45:16 +08:00
Chen Chengjun
ff842cb778 VMOs only provide pages to mappings and anonymous mappings are decoupled from VMOs 2024-08-16 10:45:16 +08:00
Chen Chengjun
cb56e6368d Do some clean-up for vdso.rs 2024-08-16 10:45:16 +08:00
Chen Chengjun
24e7f77803 Add duplicate_frame method 2024-08-16 10:45:16 +08:00
Yuke Peng
49692c2068 Fix several warnings when ktest is enabled 2024-08-16 10:43:55 +08:00
Chen Chengjun
99a22ff124 Improve efficiency of global TLB flushing 2024-08-15 23:14:51 +08:00
jellllly420
f5464e82c0 Implement new scheduling API in OSTD 2024-08-15 23:06:18 +08:00
Zhang Junyang
4844e7ca7c Allow page table protectors to flush TLB entries precisely 2024-08-14 20:40:03 +08:00
Zhang Junyang
9a6e1b03e3 Allow the page table un-mapper to flush the TLB precisely 2024-08-14 20:40:03 +08:00
Zhang Junyang
e597a10088 Rename PageTableQueryResult to PageTableItem 2024-08-14 20:40:03 +08:00
Zhang Junyang
491e4325fa Enable IRQs before leaving the OSTD boot routine 2024-08-13 20:34:26 +08:00
Ruihan Li
f499f54cf5 Record the original bound name 2024-08-13 19:32:22 +08:00
Ruihan Li
6b50d28ba1 Remove unnecessary self-connecting check 2024-08-13 19:32:22 +08:00
Ruihan Li
8bcb5a2a5f Avoid nested locks 2024-08-13 19:32:22 +08:00
Ruihan Li
5445a26ec5 Fix results of getting UNIX names 2024-08-13 19:32:22 +08:00
Ruihan Li
8fdd22de8a Align the buffer size of pipes and UNIX sockets 2024-08-13 19:30:02 +08:00
Zhang Junyang
38b46f7ac3 Prefer Context::get_user_space than CurrentUserSpace::get 2024-08-12 10:38:35 +08:00
Zhang Junyang
8cf7063150 Replace most of the current_thread! usages via Context 2024-08-12 10:38:35 +08:00
Zhang Junyang
9200538175 Replace a myriad of current! usages via Context 2024-08-12 10:38:35 +08:00
Zhang Junyang
f84d328956 Optimize getters of the current process credentials 2024-08-12 10:38:35 +08:00
Zhang Junyang
66a37da214 Allow passing the process Context to syscall handlers 2024-08-12 10:38:35 +08:00
Zhang Junyang
19ad2a2eb4 Remove module-level allowed lints in system call handlers 2024-08-12 10:38:35 +08:00
Hsy-Intel
a739b3828d Use tdx-guest crate VE handler and support release mode for TDX 2024-08-10 11:21:59 +08:00
Yuke Peng
7b4c13f5d7 Implement MADV_FREE in madvise 2024-08-10 11:14:53 +08:00
Chen Chengjun
75da7fd30e Replace old user space read/write with new APIs 2024-08-09 18:01:01 +08:00
Chen Chengjun
7ade2fcb57 Remove Vmar usage from InitStack 2024-08-09 18:01:01 +08:00
Chen Chengjun
12c60852f1 Modify the logics of setting child thread tid 2024-08-09 18:01:01 +08:00
Chen Chengjun
259b506119 Introduce CurrentUserSpace to provide read/write abilities for user space 2024-08-09 18:01:01 +08:00
Hsy-Intel
8317c4c1e8 Rename "intel_tdx" feature to "cvm_guest" 2024-08-09 17:11:12 +08:00
Hsy-Intel
ca41687a99 Use cfg_if to group tdx cfg block 2024-08-09 17:11:12 +08:00
Hsy-Intel
9bad068215 Update conditional compilation for intel_tdx feature 2024-08-09 17:11:12 +08:00
Jianfeng Jiang
dc124351d2 Add gvisor pselect test 2024-08-09 15:46:05 +08:00
Jianfeng Jiang
8b73cc8761 Support sigmask in pselect6 2024-08-09 15:46:05 +08:00