bjorn3
c089667ade
Remove support for the legacy packet user schemes
2025-12-13 15:52:30 +01:00
bjorn3
3bf880e008
Correctly handle MAP_FIXED with a zero address
2025-12-09 23:09:19 +01:00
Anhad Singh
ac713a061c
misc(scheme/user): treat all spurious wakeups as signal
...
Signed-off-by: Anhad Singh <andypython@protonmail.com >
2025-11-28 15:24:32 +11:00
Anhad Singh
45aae5f963
misc(scheme/user): use preempt guard
...
Signed-off-by: Anhad Singh <andypython@protonmail.com >
2025-11-27 16:23:31 +11:00
Anhad Singh
b2c9e5defd
misc(scheme/user): unblock the process *after* setting the state
...
Signed-off-by: Anhad Singh <andypython@protonmail.com >
2025-11-27 16:21:03 +11:00
Anhad Singh
4ff82ad8b5
fix(scheme/user): deadlocks inside call_extended_inner
...
Signed-off-by: Anhad Singh <andypython@protonmail.com >
2025-11-27 14:39:14 +11:00
Speedy_Lex
0931a7f49f
Resolve a huge portion of the clippy lints
2025-10-06 06:30:23 -06:00
Jeremy Soller
5dc6f7c3ba
lock ordering
2025-09-22 07:48:48 -06:00
bjorn3
5a6117b5ae
Replace the log crate with a custom logging system
...
This avoids the need to explicitly set a logger early during boot, which
reduces the amount of moving parts that could go wrong slightly. And it
cuts the kernel image size by 13kb.
2025-09-13 18:55:16 +02:00
Jeremy Soller
8a2aa411e2
Explicitly scope all locks, fixing multi_core hangs. Allow contexts on any CPU
2025-09-13 10:10:07 -06:00
bjorn3
cea93f7647
cargo fix --edition & rustfmt
...
Or to be precise:
RUST_TARGET_PATH=$(pwd)/targets cargo fix --edition \
--target targets/x86_64-unknown-kernel.json \
--target targets/i686-unknown-kernel.json \
--target targets/aarch64-unknown-kernel.json \
--target targets/riscv64-unknown-kernel.json \
-Zbuild-std=core,alloc --allow-dirty --bin kernel
cargo fmt
2025-09-10 16:44:36 +02:00
Ibuki Omatsu
e3d8ae1b79
feat: Introduce FdTbl and make Context.files use it for separate file tables.
2025-07-30 15:33:06 -06:00
Darley Barreto
66ea2b46ee
Adding openat syscall
2025-07-13 06:43:20 -06:00
bjorn3
08ea1da2f9
Trigger read event for user schemes when an fd is closed
2025-07-05 17:54:19 +02:00
bjorn3
7a440bcd67
Merge close and on_close scheme calls
2025-07-05 16:59:08 +02:00
Ibuki Omatsu
90643abbad
feat: Store caller's PID in Sqe during SYS_CALL
2025-06-25 08:44:51 -06:00
Jeremy Soller
d712ff5158
Add flink
2025-05-03 12:25:46 -06:00
4lDO2
4a1cd73da4
Fix same-thread scheme use-after-free.
2025-04-26 16:33:10 +02:00
4lDO2
98999e76b2
Fix sendfd error handling.
2025-04-20 13:57:37 +02:00
4lDO2
952b1483d8
Pass the sendfd arg: u64 to userspace.
2025-04-20 12:36:33 +02:00
4lDO2
8883818501
Make kernel compile.
2025-04-19 16:30:45 +02:00
4lDO2
f4d643e87c
Fixes for netstack cancellation to work.
2025-04-10 19:32:41 +00:00
Jacob Lorentzon
4607576006
Implement bidirectional SYS_CALL support
2025-03-03 23:21:56 +00:00
4lDO2
ef0758b9cc
Always use close message when available.
2025-02-21 16:50:16 +01:00
4lDO2
7295777985
Add one-way close message for schemes.
2025-02-21 15:56:05 +01:00
4lDO2
ad16b747ea
Restrict auto-fcntl to non-v2 schemes.
2024-09-27 21:36:22 +02:00
IncompententPirate
fc5d246b30
remove wrapper functions
2024-09-26 22:34:55 +00:00
4lDO2
a0d0eac8aa
Optimally divide responsibility for borrow free.
...
This appears to slightly improve performance.
2024-09-14 10:49:40 +02:00
4lDO2
97f60de4ef
WIP: Add getdents opaque_id
2024-09-11 22:09:29 +02:00
4lDO2
339271b4d7
Add getdents syscall, and switch schemes to it.
2024-09-11 22:09:26 +02:00
4lDO2
09e7e66e00
Move scheme borrow unmap to cqe write.
2024-09-04 19:23:21 +02:00
Andrey Turkin
d2ebc7ff05
Wholesale fix of warnings
...
Pretty straightforward changes. This commit tries to avoid making any non-trivial fixes.
2024-09-04 10:55:01 +03:00
4lDO2
79bbf79656
Fix some proc scheme FIXMEs.
2024-07-16 20:28:17 +02:00
4lDO2
80fe891c6e
WIP: Replace ContextId with direct Arcs.
2024-07-15 18:08:42 +02:00
4lDO2
89d532a267
Fix half of proc scheme errors.
2024-07-15 18:08:42 +02:00
4lDO2
89d1d49a4e
Fix most code except proc scheme.
2024-07-15 18:08:41 +02:00
4lDO2
0da2fce64a
Separate context and process IDs.
2024-07-15 18:08:41 +02:00
4lDO2
74b824f40f
Add rustfmt to CI.
2024-07-15 17:54:27 +02:00
4lDO2
d94baa2712
Run rustfmt.
2024-07-15 17:50:18 +02:00
4lDO2
5e7db80285
Fix a bunch of warnings.
2024-07-15 17:48:45 +02:00
4lDO2
639ba74a7e
Fix kernel compilation.
2024-07-15 17:20:55 +02:00
4lDO2
d4997150d8
Temporarily suppress some cases of EINVAL for unknown SKMSGs.
2024-06-15 15:12:04 +02:00
4lDO2
6aa5ed020e
Add missing fevent impl for RootScheme.
2024-06-15 12:29:05 +02:00
Jacob Lorentzon
bf0fc66ac1
Improved scheme protocol.
2024-06-14 11:31:51 +00:00
4lDO2
12282439b6
Reduce dead code, fix aarch64.
2024-03-23 23:51:12 +01:00
4lDO2
4a3dc2dadd
Fix the SIGKILL fd leak bug.
2024-03-16 17:49:32 +01:00
4lDO2
776a140212
Fix rax being overwritten, and compile on i686.
2024-03-16 17:49:31 +01:00
4lDO2
239bd317e9
Fix signal ordering wrt syscall return.
2024-03-16 17:49:31 +01:00
4lDO2
13bc46a30b
WIP: Implement scheme call cancelation.
2024-03-16 17:49:31 +01:00
4lDO2
10256b331c
Ensure only the kernel can return EINTR.
2024-03-16 17:49:26 +01:00