Commit Graph

94 Commits

Author SHA1 Message Date
d71771e49a Re-enable CFS 2025-02-11 10:51:12 +08:00
a6b3a65fe5 Don't allocate when possible in do_poll 2025-02-08 15:43:20 +08:00
0dca168717 Use #[expect(lint)], not #[allow(lint)] 2025-02-08 15:10:04 +08:00
b415538097 Remove useless #[allow(lint)] 2025-02-08 15:10:04 +08:00
b9ce3e64ad Make the file lookup faster 2025-01-09 10:58:16 +08:00
16db96e496 Adjust as_socket signature 2025-01-09 10:58:16 +08:00
e75b6320ad Add support for group-based permission checking in ext2 2024-12-26 17:07:55 +08:00
0bfe7aceb8 Utilize ThreadLocal 2024-12-26 14:51:20 +08:00
1a5bf7b0ad Add overflow check for given sigaltstack addr and size 2024-12-25 15:46:17 +08:00
6e46641a09 Fix a mmap MAP_FIXED issue 2024-12-24 09:10:10 +08:00
72cb160539 Add keepidle tcp option 2024-12-18 13:19:34 +08:00
24f1e02b26 Support prctl(PR_SET_KEEPCAPS/PR_GET_KEEPCAPS) 2024-12-17 20:14:13 +08:00
d72ce0351a Add permission checks for sys_capset 2024-12-17 20:14:13 +08:00
35c20620bc Rewrite exit() and exit_group() 2024-12-17 19:36:38 +08:00
1b56a8b600 Enable syscall restart 2024-12-16 21:12:08 +08:00
3bbdc68d39 Fix linter errors 2024-12-15 16:37:40 +08:00
13229cc037 Implement totalram and freeram computation for sysinfo 2024-12-15 16:37:40 +08:00
73b94acf2b Fix linter errors 2024-12-15 16:37:40 +08:00
4f653acfa3 Implementation of uptime for sysinfo 2024-12-15 16:37:40 +08:00
b4ebd6e87f Make stub for sysinfo syscall 2024-12-15 16:37:40 +08:00
1716f4f324 Use Pollee as the socket observer 2024-12-12 20:50:12 +08:00
fc45592a28 Fix rlimits_test 2024-12-12 16:19:01 +08:00
36fc1d3757 Move FS things to PosixThread 2024-12-05 13:44:09 +08:00
6d3bb5a9d0 Fix compile error caused by updated Step::steps_between in Rust 2024-12-01 18:56:28 +08:00
5e35704e38 Support eagerly FPU state save/restore
Co-authored-by: Shaowei Song <songshaowei.ssw@antgroup.com>
2024-11-29 21:53:14 +08:00
f762eb8913 Remove the lazy_static dependency 2024-11-28 15:28:30 +08:00
fab61f5f66 Make Pollee stateless 2024-11-20 16:39:18 +08:00
39d303c72f Rename get_current_userspace to current_userspace 2024-11-15 13:24:58 +08:00
96de617ad9 Rename get_user_space to user_space 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
4ea3e49788 Refactor Vmar and VmMapping.
Co-authored-by: Zhang Junyang <junyang@stu.pku.edu.cn>
2024-11-13 17:29:57 +08:00
ac71234b89 Remove {,un}register_observer 2024-11-13 14:15:44 +08:00
e32fb2f91b Introduce PollAdaptor and Poller 2024-11-13 14:15:44 +08:00
f12e502ab0 Rename Poller to PollHandle 2024-11-13 14:15:44 +08:00
32b8e05cc3 Make *_or_timeout APIs concise 2024-11-09 10:25:24 +08:00
10cc85d588 Add syscall getpgid 2024-11-09 10:20:57 +08:00
1fe74c9c92 Add sys_getrlimit and sys_setrlimit 2024-11-06 21:53:31 +08:00
7a08d9a660 Support other SigStackFlags 2024-11-06 15:00:01 +08:00
4701eaf0cb Implementation of load average calculation and corresponding /proc entry
Moved everything into the kernel side. Add a SchedulerStats trait

Use 'fixed' to represent fixed-point numbers

Make the loadavg calculation lazy
2024-11-05 11:46:23 +08:00
7ddfd42baa Make wait_events support timeout 2024-11-01 13:00:40 +08:00
f21394c679 Use more wait_events 2024-11-01 13:00:40 +08:00
846b3ba169 Use LinkedList to store WorkItem to avoid additional heap allocation 2024-11-01 11:24:09 +08:00
96a153dfc5 Implement dummy metadata() for epoll and socket files 2024-10-30 14:09:02 +08:00
3461bd5de6 Add more boundary checks for epoll_wait 2024-10-30 10:42:16 +08:00
b5610f3034 Report POLLNVAL in poll for invalid FDs 2024-10-28 14:33:32 +08:00
390aa411bd Beautify the poll() system call 2024-10-28 14:33:32 +08:00
6ece48c095 Refactor process table 2024-10-28 13:00:13 +08:00
e319641b4d Implement system call sched_get/set_affinity 2024-10-26 22:06:41 +08:00
885e4315e3 fix a comment typo at kernel/src/syscall/mod.rs 2024-10-25 13:26:45 +08:00