Commit Graph

1506 Commits

Author SHA1 Message Date
0a36760f7a Respect user-defined exit signal in clone() and clone3()
When calling clone() and clone3(), the user is allowed to specify a
signal to be sent to the parent process on exit. Respect this value by
storing it in the Process struct and sending the signal on exit.

Add a test as well to verify that the signal is properly delivered to
the parent.
2024-09-26 20:07:43 +08:00
130a0f7030 Homogenize arguments for clone() and clone3()
The arguments for both syscalls follow different formats. Rewrite the
CloneArgs struct to homogenize both formats into one.
2024-09-26 20:07:43 +08:00
fad39fdf7a Make TLB flush policy relaxed 2024-09-26 19:29:59 +08:00
52f1787d35 Remove syncronizations for the VmSpace PF handler 2024-09-26 19:29:59 +08:00
7407cc8091 Remove some repetitive locks forking Vmar 2024-09-26 19:29:59 +08:00
ac6d9256ef Improve the VmSpace forking API 2024-09-26 19:29:59 +08:00
d4036d1e9d Handle error in FsResolver::create_new_file() 2024-09-26 17:45:00 +08:00
3929ea8c86 Stabilize some benchmark results 2024-09-26 15:33:16 +08:00
f2af6136da Minor optimizations on both lat-syscall-stat and lat-syscall-open 2024-09-26 15:25:49 +08:00
fc77c474db Move and group methods 2024-09-26 15:22:16 +08:00
3fc396f5f1 Adjust the ephemeral port 2024-09-26 15:22:16 +08:00
eb3a033496 Refine some lock usages 2024-09-26 15:22:16 +08:00
b13a82dc61 Bump smoltcp version 2024-09-26 15:22:16 +08:00
51334c4a36 Clean up smoltcp dependencies 2024-09-26 15:22:16 +08:00
d62bb1ca76 Use static IP addresses 2024-09-26 15:22:16 +08:00
9abdebbae3 Add iperf3 benchmark 2024-09-26 10:03:32 +08:00
fb718fd440 Optimize the latency of lat-sig-install 2024-09-25 17:29:20 +08:00
cf9c71119a Update the benchmark href of README 2024-09-25 15:56:02 +08:00
21fedd1b60 Implement atomic wrapper for integer-like type 2024-09-25 14:47:37 +08:00
a7cb71161d Use summary.json to controll the overview charts of benchmarks 2024-09-25 14:05:49 +08:00
ae4ac38471 Optimize the cache and lock parts in MountNode 2024-09-25 11:22:24 +08:00
791c566b71 Optimize the cache and lock parts in Dentry 2024-09-25 11:22:24 +08:00
2c6dd074d1 Refactor the path lookup in FsResolver 2024-09-25 11:22:24 +08:00
1aa8b0abc6 Correct lock usages in UNIX sockets 2024-09-24 20:49:48 +08:00
14531cd99f Implement allocation-free logging 2024-09-24 20:40:37 +08:00
cbe85a1878 Add check for negative timeval_t.sec in do_futimesat 2024-09-24 20:36:29 +08:00
179705a3fc Fix RamFS readahead 2024-09-24 20:34:19 +08:00
c99069981e Timeout earlier in CI's integration test 2024-09-24 19:35:05 +08:00
4d36dd541f Extract x86-specific exception handling in aster-nix 2024-09-23 19:39:45 +08:00
a997d9f0b0 Enable some gVisor futex tests 2024-09-22 16:00:56 +08:00
46708f84bc Implement futex private flag 2024-09-22 16:00:56 +08:00
a754accf6a Copy the code from slab_allocator into OSTD and add license header 2024-09-22 12:27:04 +08:00
f26c7a01cd Avoid multiple lock in heap allocator 2024-09-22 12:27:04 +08:00
e995ed3ebc Use slab allocator to allocate heap 2024-09-22 12:27:04 +08:00
228cfe2262 Preallocate some space when expanding size in ext2 2024-09-21 20:22:39 +08:00
550eafcb79 Preallocate some space when expanding size in ramfs 2024-09-21 20:22:39 +08:00
9a79ecbcbe Clean up the frame buffer state in ostd::mm 2024-09-21 15:38:15 +08:00
8b2ca77804 Bump the OSDK's Cargo.lock when bumping the versions 2024-09-21 15:19:35 +08:00
b9808136a4 Block failed futex and fcntl tests 2024-09-21 15:18:56 +08:00
d25346342c Set fail-fast to false to avoid cancelling normal steps 2024-09-20 14:40:11 +08:00
9acc02a288 Hide Semaphores on the overview temporarily 2024-09-20 12:57:05 +08:00
2a6733579d Refactor architecture-specific page fault handling 2024-09-20 10:56:13 +08:00
c5009e38f1 Add pipe/short_rw test
Co-authored-by: Ruihan Li <lrh2000@pku.edu.cn>
2024-09-20 10:37:20 +08:00
985813c7f9 Use IoVec-based reader/writer to refactor network APIs 2024-09-20 10:37:20 +08:00
ea8327af0f Add regression test for sendmsg/recvmsg 2024-09-20 10:37:20 +08:00
b4003b8aeb Add normalize for timeval_t and const value for time 2024-09-20 10:35:03 +08:00
4fa4e5ef2a Add check during the conversion from timeval_t to Duration 2024-09-20 10:35:03 +08:00
70505ff4f8 Support futex wait timeout 2024-09-19 22:42:13 +08:00
12325733b0 Make tests in integration test run in parallel 2024-09-19 22:41:21 +08:00
c2f7a10b84 Implement cpu_local with GS and ensure GS points to TSS 2024-09-19 13:00:36 +08:00