Commit 0c3e379
committed
Runnable buddy PR
runnable, with many logs, tests not checked yet
runnable platform:
1.qemu_virt64_aarch64
---
fix bugs:
1.multiple DRAM_BASE : kernel/src/boards/qemu_virt64_aarch64/mod.rs
2.multiple instances of BUDDY_ALLOC : kernel/src/allocator/mod.rs
3.use PHYS_DRAM_SIZE when link.x links all symbols with linearmap offset
4.buddy init code ignore kernel image part in memory layout
5.metadata_end's calculation should sub linearmap_offset first
6.buddy init code set zero [mem_start, page_array_size] directly, ignore
kernel image part
---
modified:
kernel/src/allocator/Kconfig
kernel/src/allocator/buddy/heap.rs
kernel/src/allocator/buddy/mod.rs
kernel/src/allocator/buddy/page.rs
kernel/src/allocator/buddy/tests.rs
kernel/src/allocator/mod.rs
kernel/src/boards/qemu_virt64_aarch64/config.rs : define DRAM_SIZE
kernel/src/boards/qemu_virt64_aarch64/link.x : LENGTH = 125.5M, increase linearmap region size from 32M to 125.5M
kernel/src/boards/qemu_virt64_aarch64/mod.rs : pub use DRAM_SIZE1 parent 204bf7a commit 0c3e379
9 files changed
Lines changed: 1270 additions & 6 deletions
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
35 | 35 | | |
36 | 36 | | |
37 | 37 | | |
| 38 | + | |
| 39 | + | |
| 40 | + | |
| 41 | + | |
| 42 | + | |
| 43 | + | |
| 44 | + | |
| 45 | + | |
| 46 | + | |
| 47 | + | |
0 commit comments