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
da6f7adb42
Use HashMap rather than BTreeMap for scheme handles
...
According to the comments this previously wasn't done due to hashbrown
not having a const constructor. While it is true that HashMap::new() is
not const, HashMap::with_hasher() is const. HashMap::new() becoming
const is likely blocked on const traits.
This shrinks the kernel image by about 35kb.
2025-09-13 12:00:37 +02:00
bjorn3
9aef07372e
Make insert_global panic on errors
...
All callers unwrap the result anyway
2025-09-12 19:56:14 +02: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
7a440bcd67
Merge close and on_close scheme calls
2025-07-05 16:59:08 +02:00
Jeremy Soller
d712ff5158
Add flink
2025-05-03 12:25:46 -06:00
4lDO2
ce77a018ec
Reach init again, with proc mgr.
2025-04-19 16:30:46 +02:00
4lDO2
a9fb2dcb93
Simplify proc scheme security.
2025-04-19 16:30:46 +02:00
4lDO2
5d41cd7c53
Remove unimplemented itimer scheme.
2025-04-13 18:13:00 +02:00
Jacob Lorentzon
4607576006
Implement bidirectional SYS_CALL support
2025-03-03 23:21:56 +00:00
4lDO2
7295777985
Add one-way close message for schemes.
2025-02-21 15:56:05 +01:00
Jeremy Soller
34a6a441f1
Initial aarch64 ACPI support
2024-10-30 16:16:24 -06:00
Andrey Turkin
db32f5f7a3
Move some conditionally compiled code from common files into arch-gated files
2024-10-19 21:59:14 +03:00
Andrey Turkin
55041e2eeb
Use a custom config flag to conditionally compile DTB-specific areas
...
Would be great if we could use a feature instead, but Cargo can't do target-specific defaults features
2024-10-19 21:03:43 +03:00
4lDO2
e3e05ebca8
Fix root scheme order by using indexmap (tmp).
2024-09-11 22:09:29 +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
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
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
156017a25d
Refactor: wrap RwLock<AddrSpace>.
2024-03-04 19:03:00 +01:00
Jeremy Soller
45f1c4e29e
Add rustfmt from relibc and apply it with cargo fmt
2024-01-17 13:52:01 -07:00
Ivan Tan
ebf96fa843
aarch64: fix dtb scheme
2023-12-14 03:34:37 +00:00
bjorn3
2d065083df
Use HashMap instead of BTreeMap where possible
...
This shrinks the kernel from 905840 bytes to 862408 bytes.
2023-12-13 19:55:20 +01:00
4lDO2
78beae5c92
Fix aarch64
2023-12-13 11:08:12 +01:00
4lDO2
88508a2cb7
Remove as_user_inner.
2023-12-13 11:08:12 +01:00
4lDO2
3a35338aa7
Remove as_{filetable,sigaction,addrspace}.
2023-12-13 11:08:12 +01:00
4lDO2
f3ce5b167d
Make proc: and thisproc: global.
2023-12-13 11:08:11 +01:00
4lDO2
3be015ce4d
Make sys: global.
2023-12-13 11:08:11 +01:00
4lDO2
fe0e3103f4
Make itimer: global.
2023-12-13 11:08:11 +01:00
4lDO2
87b0c568a0
Make time: global.
2023-12-13 11:08:11 +01:00
4lDO2
f6002e839d
Centralize global scheme constructors.
2023-12-13 11:08:11 +01:00
4lDO2
ce313ba28d
Add global scheme IDs to map, for now.
2023-12-13 11:08:11 +01:00
4lDO2
d9c2443ae3
Make irq: a GlobalScheme.
2023-12-13 11:08:11 +01:00
4lDO2
10e86ea89d
Hardcode global scheme IDs.
2023-12-13 11:08:11 +01:00
4lDO2
679c26c03b
s/Arc<dyn KernelScheme>/enum, but deref as dyn.
2023-12-13 11:08:07 +01:00
bjorn3
017702d3d2
Remove a lot of dead code
2023-12-12 15:01:29 +00:00
Ron Williams
02087065c1
don't panic when adding an existing name to a namespace
2023-11-15 22:18:50 +00:00
4lDO2
036a4bdee4
Replace syscall::Scheme with KernelScheme.
2023-11-15 20:00:47 +01:00
4lDO2
192d663d84
Forbid / in scheme names.
2023-11-09 14:40:20 +01:00
4lDO2
2f2e76c0ca
Inform SYS_SENDFD scheme if the fd was exclusive.
2023-10-14 14:56:40 +02:00
4lDO2
1546a4a08f
Implement SYS_SENDFD and SKMSG_FOBTAINFD.
2023-10-14 12:44:38 +02:00
Ivan Tan
eb0d48ac81
aarch64: add dtb scheme
2023-09-18 20:45:23 +00:00
4lDO2
6d65a93606
Remove live scheme.
2023-09-08 01:57:34 +00:00
4lDO2
c4a5abb34a
Remove AtomicSchemeId.
2023-09-06 09:22:59 +02:00
4lDO2
126c7b7d8a
Pass scheme ID to UserInner cleaner.
2023-09-06 09:21:53 +02:00