Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
56 commits
Select commit Hold shift + click to select a range
f6c26c9
perf: replace the annoyed ext4 crate with a new choice (called anothe…
SMS-Derfflinger Jul 23, 2025
f050373
feat(fs): impl write, create and mkdir for ext4 fs
SMS-Derfflinger Jul 25, 2025
d59a550
feat(fs): impl remove file and dir.
SMS-Derfflinger Jul 26, 2025
5c40166
fix(fs): fix some informations
SMS-Derfflinger Jul 26, 2025
1d1a025
feat(fs): impl rename
SMS-Derfflinger Jul 29, 2025
22458ed
fix(fs): fix rename's metadata
SMS-Derfflinger Jul 29, 2025
806c4fe
fix(fs): fix ext4's write offset update
SMS-Derfflinger Jul 31, 2025
082c5c5
Merge branch 'master' into ext4-replace
SMS-Derfflinger Aug 3, 2025
db1caeb
feat(fs): partial work for ext4's page cache
SMS-Derfflinger Aug 4, 2025
a2c50b9
feat(fs): temporary cache write back strategy for ext4
SMS-Derfflinger Aug 5, 2025
e89a286
runtime: rework the whole runtime arch. (partial)
greatbridf Aug 5, 2025
e23c9eb
runtime: new task sleep-wakeup method and some adaption
greatbridf Aug 7, 2025
fb9a175
runtime: add trace logs and fix few bugs
greatbridf Aug 7, 2025
3ab454f
riscv64, trap: remove load_interrupt_stack impl
greatbridf Aug 8, 2025
6b152c7
riscv64, trap: fix kernel space trap returns
greatbridf Aug 8, 2025
33ff315
task: brand new block_on and stackful wrapper
greatbridf Aug 8, 2025
5ada0d0
build, Makefile: remove --feature if none is present
greatbridf Aug 8, 2025
21dd5ea
rcu: provide call_rcu() to call rcu drop asynchronously
greatbridf Aug 8, 2025
874a4fa
task: migrate all Task::block_on calls to task::block_on
greatbridf Aug 8, 2025
661a159
riscv64, trap: rework to fix nested captured traps
greatbridf Aug 9, 2025
9c900be
task, thread: working version of threads
greatbridf Aug 9, 2025
30bfc5a
loongarch64, trap: rework to fix nested captured traps
greatbridf Aug 9, 2025
a622172
trap: introduce Breakpoint fault type
greatbridf Aug 9, 2025
21b7650
task: fix stackful waker implementation
greatbridf Aug 10, 2025
dee96a3
syscall: migrate all syscalls to async...
greatbridf Aug 10, 2025
973f6f2
partial work: vfs asynchronize
greatbridf Aug 11, 2025
db931a8
partial work: file array rework and asynchronize
greatbridf Aug 14, 2025
34a6252
feat: unwinding and printing stack backtrace
greatbridf Aug 16, 2025
3fb4966
task: fix infinite sleep in stackful tasks
greatbridf Aug 16, 2025
c57b71f
Merge remote-tracking branch 'SMS-Derfflinger/ext4-replace' into task…
greatbridf Aug 16, 2025
8c656b5
configure: check and use ARCH given in env
greatbridf Aug 25, 2025
cefcd6f
vfs: rework the vfs subsystem with async
greatbridf Sep 2, 2025
3392e46
vfs, rcu: rework path walking with new rcu syntax
greatbridf Sep 14, 2025
689d816
style, vfs: remove unused imports and InodeRef
greatbridf Sep 14, 2025
6348a37
vfs: fix debug print of `Mode` structs
greatbridf Sep 14, 2025
39d1572
mem, paging: introduce page locks and exclusive pages
greatbridf Oct 8, 2025
9a0eeb0
tls: rework of arch's UserTLS design
greatbridf Dec 22, 2025
036568b
mem, slab: rework the slab system
greatbridf Jan 6, 2026
5cddfc2
mem, buddy: rework the buddy system
greatbridf Jan 6, 2026
60149eb
vfs: rework of inode and page cache system
greatbridf Jan 13, 2026
f9b5b3a
mem: introduce new `Folio` abstraction
greatbridf Jan 17, 2026
30d6c9d
script: add a script to help translate stacktraces
greatbridf Jan 17, 2026
ee46862
style: fix or suppress warnings
greatbridf Jan 17, 2026
3b832e3
user, init: update riscv64 init script
greatbridf Jan 17, 2026
b2c4c54
chore: remove and ignore vscode settings from svc
greatbridf Jan 18, 2026
59f0444
mm, proc: add an exited thread reaper
greatbridf Jan 18, 2026
dae6e75
proc: rewrite process list organization
greatbridf Jan 20, 2026
e1bf8ce
style: reformat the files related to next patches
greatbridf Jan 23, 2026
db0836f
riscv64, hal: simplify ArchMemory::free_ram implementation
greatbridf Jan 23, 2026
504934d
style: add helper macros to retrieve symbol constants
greatbridf Jan 23, 2026
49a8fa8
style: reformat files
greatbridf Jan 23, 2026
bb3d5e5
riscv64, linker: make sure vdso lies inside .data
greatbridf Jan 23, 2026
dac24f9
riscv64: rewrite FDT and present free memory parsing
greatbridf Jan 23, 2026
1f4230d
sysinit: pointee type should be u8 when using ptr::write_bytes
greatbridf Jan 23, 2026
31ab01e
style: reformat file
greatbridf Jan 23, 2026
4f6289a
hal, mm: alloc basic folios from low to high addr
greatbridf Jan 23, 2026
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
1 change: 1 addition & 0 deletions .cargo/config.toml
Original file line number Diff line number Diff line change
@@ -1,6 +1,7 @@
[build]
target = "riscv64gc-unknown-none-elf"
target-dir = 'build'
rustflags = ["-C", "force-unwind-tables"]

[unstable]
build-std-features = ['compiler-builtins-mem']
Expand Down
1 change: 1 addition & 0 deletions .gitignore
Original file line number Diff line number Diff line change
@@ -1,6 +1,7 @@
build/

.idea/
.vscode/settings.json

test/

Expand Down
8 changes: 4 additions & 4 deletions .rustfmt.toml
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
max_width = 100
max_width = 80
hard_tabs = false
tab_spaces = 4
newline_style = "Auto"
Expand All @@ -14,7 +14,7 @@ single_line_if_else_max_width = 60
single_line_let_else_max_width = 60
wrap_comments = false
format_code_in_doc_comments = false
doc_comment_code_block_width = 100
doc_comment_code_block_width = 80
comment_width = 80
normalize_comments = false
normalize_doc_attributes = false
Expand All @@ -29,8 +29,8 @@ fn_single_line = false
where_single_line = false
imports_indent = "Block"
imports_layout = "Mixed"
imports_granularity = "Preserve"
group_imports = "Preserve"
imports_granularity = "Module"
group_imports = "StdExternalCrate"
reorder_imports = true
reorder_modules = true
reorder_impl_items = false
Expand Down
3 changes: 0 additions & 3 deletions .vscode/settings.json

This file was deleted.

175 changes: 157 additions & 18 deletions Cargo.lock

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

32 changes: 26 additions & 6 deletions Cargo.toml
Original file line number Diff line number Diff line change
Expand Up @@ -7,6 +7,9 @@ edition = "2021"
crate-type = ["bin"]

[dependencies]
arcref = { path = "./crates/arcref", default-features = false, features = [
"alloc",
] }
atomic_unique_refcell = { path = "./crates/atomic_unique_refcell", features = [
"no_std",
] }
Expand All @@ -24,32 +27,49 @@ pointers = { path = "./crates/pointers" }
posix_types = { path = "./crates/posix_types" }
slab_allocator = { path = "./crates/slab_allocator" }

intrusive-collections = { version = "0.9.8", features = [
"nightly",
], git = "https://github.com/greatbridf/intrusive-rs" }
bitflags = "2.6.0"
intrusive-collections = "0.9.7"
itertools = { version = "0.13.0", default-features = false }
acpi = "5.2.0"
align_ext = "0.1.0"
xmas-elf = "0.10.0"
ext4_rs = "1.3.2"
another_ext4 = { git = "https://github.com/SMS-Derfflinger/another_ext4", branch = "main" }
stalloc = { version = "0.6.1", default-features = false, features = [
"allocator-api",
] }
async-trait = "0.1.89"
futures = { version = "0.3.31", features = [
"alloc",
"async-await",
], default-features = false }
static_assertions = "1.1.0"
cfg-if = "1.0.4"

[target.'cfg(any(target_arch = "riscv64", target_arch = "loongarch64"))'.dependencies]
virtio-drivers = { version = "0.11.0" }

[target.'cfg(target_arch = "riscv64")'.dependencies]
unwinding = { version = "0.2.8", default-features = false, features = [
"unwinder",
"fde-static",
"personality",
"panic",
] }

[features]
default = []
trace_pci = []
trace_syscall = []
trace_scheduler = []
trace_scheduler = ["eonix_runtime/trace_scheduler"]
log_trace = ["trace_pci", "trace_syscall", "trace_scheduler"]
log_debug = []
smp = []

[profile.release]
debug = true

[profile.dev]
panic = "abort"

[profile.dev.package.eonix_preempt]
opt-level = "s"

Expand Down
Loading
Loading