bjorn3
dc7e823f70
Deduplicate kernel page flags
2026-04-02 20:29:36 +02:00
bjorn3
c8879531ae
rmm: Add device_memory and uncachable flags to PageFlags
2026-03-30 20:34:45 +02:00
bjorn3
c4b064ea44
Move arch specific EntryFlags into rmm
2026-03-30 18:49:15 +02:00
bjorn3
a876d66648
rmm: Reduce visibility of PageTable methods
...
This disallows direct manipulation of the page tables. Only manipulation
through PageMapper is allowed.
2026-03-29 14:16:53 +02:00
bjorn3
abf710b4a2
Move handling of kernel page table entry copying to RMM
...
This way it can ensure those page table entries never get unmapped,
ensuring they are kept in sync between all processes.
2026-03-29 14:16:53 +02:00
auronandace
4c734e461a
prefer saturating methods over direct arithetic
2026-03-05 10:58:45 +00:00
auronandace
fc6ffd59ff
avoid direct indexing in MemoryMap register function
2026-03-03 17:22:44 +00:00
auronandace
14b8c2b0c1
enforce two lints and collapse some ifs
2026-03-03 14:51:32 +00:00
bjorn3
021cdf47f4
Fix a bunch of warnings
2025-10-19 14:27:43 +02:00
bjorn3
ff65afd003
Don't depend on the stack setup by the bootloader
...
This way we can choose our own size for the stack and don't have to
identity map it manually. Also this way the bootloader doesn't have to
change the stack pointer right before calling into the kernel (which it
currently does in an unsound way)
2025-10-19 06:23:39 -06:00
Speedy_Lex
0931a7f49f
Resolve a huge portion of the clippy lints
2025-10-06 06:30:23 -06:00
bjorn3
e7358e3e5b
Deduplicate a bunch of things that use KernelArgs between archs
2025-09-20 19:10:19 +02: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
bjorn3
f9a4178898
Always enable graphical_debug
...
We already gracefully handle a missing framebuffer.
2025-09-11 21:41:30 +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
bjorn3
c404598296
Use cfg!() rather than #[cfg] for the cfg in map_memory
2025-09-07 13:26:04 +02:00
bjorn3
b7566e66bd
Fix 32bit x86
2025-09-07 13:00:40 +02:00
4lDO2
f044ffb03b
Remove stable #![feature] and most x86_64 static mut.
2025-02-21 14:16:58 +01: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
Andrey Turkin
0a6a90415a
Refactor initial memory paging
2024-10-19 08:44:46 +03:00