Commit Graph

834 Commits

Author SHA1 Message Date
30ec0be210 Halt the idle CPUs 2025-03-21 21:19:50 +08:00
f1c7564184 Move CPU context implementations to a specific module 2025-03-21 21:19:50 +08:00
298a205da2 Avoid an Arc::clone in mmap to make it scale 2025-03-21 20:09:42 +08:00
f9284d3803 Workaround the missing process of a thread 2025-03-21 18:05:10 +08:00
bce23a63bd Add sys_signalfd/sys_signalfd implementation 2025-03-21 16:10:55 +08:00
bb1b41b413 Fix dead code lints 2025-03-21 16:00:35 +08:00
49e6cd2712 Use macro to handle TDX-related code 2025-03-20 17:25:22 +08:00
135100a472 Modify the getting-VMAR usages in other syscalls 2025-03-20 14:20:47 +08:00
048fd1077c Inject post_schedule/user_page_fault handler to OSTD 2025-03-20 14:20:47 +08:00
2a20f6b59a Add mutable functionality to the process VMAR 2025-03-20 14:20:47 +08:00
248b24fb4e Remove UserSpace abstraction from OSTD 2025-03-20 14:20:47 +08:00
d9f3a7761a Notify socket events directly 2025-03-20 11:44:47 +08:00
2f66f5d234 Revert "Set hash buckets as 2 to work around performance bottleneck"
This reverts commit 631ab21838.
2025-03-20 11:44:47 +08:00
7f323ac501 Don't remove TIME-WAIT sockets 2025-03-20 11:44:47 +08:00
240192f735 Make connection addition and deletion in order 2025-03-20 11:44:47 +08:00
a7e718e812 Avoid O(n) iteration when sending TCP packets 2025-03-20 11:44:47 +08:00
73e0b30785 Eliminate redundant check in hot path 2025-03-20 10:45:16 +08:00
c1e6f9a552 Eliminate redundant Clone in hot path 2025-03-20 10:45:16 +08:00
288942b970 Revise the docs of the slab and remove an unused type 2025-03-14 21:17:47 +08:00
a708a0c046 Inject a scalable slab allocator 2025-03-14 19:55:00 +08:00
d366043876 Enable sig_action test from gVisor test 2025-03-14 16:09:11 +08:00
7e96810e1a Remove trampoline code in handling user kernel 2025-03-14 16:09:11 +08:00
5f05963ee5 Inject a scalable buddy system allocator to OSTD
Co-authored-by: Zhe Tang <tangzh@stu.pku.edu.cn>
2025-03-14 08:37:37 +08:00
455b8abba0 Adopt a round-robin strategy to select among equally idle CPUs 2025-03-13 16:28:02 +08:00
7b5f2c414a Use the latest tdx-guest crate version to fix the TDX init issue 2025-03-13 12:56:46 +08:00
d40d452e9d Receive RST packets as ECONNRESET errors 2025-03-10 18:08:08 +08:00
aa29640ed7 Send RST packets when appropriate 2025-03-10 18:08:08 +08:00
eef56c770b Simplify the TCP state check 2025-03-10 18:08:08 +08:00
9edee83ef1 Use the latest tdx-guest crate version to fix the MMIO emulation issue 2025-03-10 17:58:35 +08:00
388eec449a Add ip level socket option 2025-03-07 13:38:02 +08:00
ffc7e3612d Fix RLimit lock update 2025-03-06 21:29:40 +08:00
c1dde01fc3 Add sched_attr system call series 2025-03-06 21:29:40 +08:00
9e1c939a3f Remove static_assertions 2025-03-06 16:35:21 +08:00
0d36375dfa Avoid generic_const_exprs feature 2025-03-06 16:35:21 +08:00
d19578ac78 Pooling some cached block writes in ext2 2025-03-06 11:43:07 +08:00
5bfdcfc619 Add memory resource limit mechanism 2025-03-06 11:22:05 +08:00
eca3c8fb59 Refactor RLimit64 to atomic 2025-03-06 11:22:05 +08:00
96d83e43b4 Make VirtioConsolesPrinter heapless 2025-03-05 20:24:59 +08:00
d37e60d082 Report socket errors in send/recv 2025-03-05 19:48:28 +08:00
68cf99993e Remove socket errors from SocketOptionSet 2025-03-05 19:48:28 +08:00
801eac9386 Support PR_SET/GET_CHILD_SUBREAPER for sys_prctl 2025-03-03 19:31:50 +08:00
55ee4bda2c Use RCU for console device callbacks 2025-03-03 09:24:49 +08:00
78a695f21b Use RcuOption for lazy-initialized soft-IRQ callbacks 2025-03-03 09:24:49 +08:00
6d42a07e95 Implement getcpu syscall and add corresponding test application 2025-02-27 11:41:26 +08:00
cbb4b4e631 Fix lint errors 2025-02-27 11:36:41 +08:00
18e0eae331 Never expose ERESTARTSYS to the userspace 2025-02-23 23:11:05 +08:00
8187fa2f1b Fix timeout mechanism in wait_events 2025-02-23 23:11:05 +08:00
2411ba671c Reapply "Make pause_timeout return EINTR"
This reverts commit 7a017faa44.
2025-02-23 23:11:05 +08:00
29791ba77e Distribute tasks among all the CPUs 2025-02-21 10:02:46 +08:00
0398ea3d17 Split bound.rs into small files 2025-02-18 19:20:05 +08:00