Commit Graph

40 Commits

Author SHA1 Message Date
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
d71771e49a Re-enable CFS 2025-02-11 10:51:12 +08:00
0dca168717 Use #[expect(lint)], not #[allow(lint)] 2025-02-08 15:10:04 +08:00
2cf4aebe7a Use FnOnce() + Send as task func 2025-01-23 09:57:10 +08:00
5df8d59563 Exit when handle_user_signal fail 2024-12-26 18:33:32 +08:00
0bfe7aceb8 Utilize ThreadLocal 2024-12-26 14:51:20 +08:00
ced0023d6b Introduce a syscall restart mechanism 2024-12-16 21:12:08 +08:00
969ac97144 Make atomic mode panics have clear messages 2024-12-11 20:27:29 +08:00
878f3f3760 Scheduling class support 2024-12-04 09:36:41 +08:00
39d303c72f Rename get_current_userspace to current_userspace 2024-11-15 13:24:58 +08:00
e6c613f538 Rename (Posix)ThreadExt to As(Posix)Thread 2024-11-13 21:44:37 +08:00
9233d1cdbb Add ThreadExt and clean up PosixThreadExt 2024-11-13 21:44:37 +08:00
a4a8807a20 Remove KernelThreadExt 2024-11-13 21:44:37 +08:00
7850f7e60a Resolve borrowed_box lint 2024-11-13 21:44:37 +08:00
25a918d132 Print who and on which CPU the kernel panics 2024-11-07 16:39:47 +08:00
846b3ba169 Use LinkedList to store WorkItem to avoid additional heap allocation 2024-11-01 11:24:09 +08:00
2ac6e0e126 Avoid adding worker during workqueue enqueueing 2024-11-01 11:24:09 +08:00
1b23182dcc Fix the thread status ordering by limiting the API 2024-10-26 22:06:41 +08:00
e319641b4d Implement system call sched_get/set_affinity 2024-10-26 22:06:41 +08:00
3468ec213b Use CpuId with validity ensurance rather than u32 2024-10-26 22:06:41 +08:00
4658b62f90 Treat thread oops with better care to avoid silent panics 2024-10-22 10:08:24 +08:00
4823b82e41 Catch panics in threads as oops 2024-10-20 13:24:58 +08:00
9e4257b655 Fix multiple issues pointed out by the new compiler 2024-10-13 22:32:05 +08:00
9cc63149f1 Remove cpu_affinity field from OSTD Task struct 2024-09-27 10:21:45 +08:00
8927031426 Remove priority field from OSTD Task struct 2024-09-27 10:21:45 +08:00
fb718fd440 Optimize the latency of lat-sig-install 2024-09-25 17:29:20 +08:00
21fedd1b60 Implement atomic wrapper for integer-like type 2024-09-25 14:47:37 +08:00
4d36dd541f Extract x86-specific exception handling in aster-nix 2024-09-23 19:39:45 +08:00
2a6733579d Refactor architecture-specific page fault handling 2024-09-20 10:56:13 +08:00
f3174dbbbc Make task store Arc<Thread> and process store Arc<Task> 2024-09-14 17:34:14 +08:00
81b0f265b5 Move Tid from Thread to PosixThread 2024-09-14 17:34:14 +08:00
1873bb7a3f Add wait_until_* functionality to Waiter 2024-09-14 13:59:07 +08:00
d9eccdcfbe Implement remote TLB flush on VmSpace 2024-09-13 20:10:03 +08:00
1fb34780f6 Eliminate an additional current!() operation in user space pagefault handling 2024-09-12 21:09:16 +08:00
a72c7dadf3 Optimize the latency of lmbench-signal-prot 2024-08-28 14:27:41 +08:00
ed82c11dd3 Use a SpinLock for the thread table instead of Mutex 2024-08-27 17:22:47 +08:00
86f09eef75 Fix all spelling mistakes in history by typos tool 2024-08-27 12:19:48 +08:00
dafd16075f Remove the shim kernel crate 2024-08-23 23:37:50 +08:00