Commit Graph

363 Commits

Author SHA1 Message Date
c142afdb31 Fix TLB coherence of KVirtArea a bit 2025-03-25 17:35:54 +08:00
26c50ea335 Track and flush TLBs that map kernel stacks 2025-03-25 17:35:54 +08:00
0e1c660225 Make VmReader's several methods accept &mut self 2025-03-25 14:25:08 +08:00
61fa1d1901 Simplify the lock usages when flush TLBs 2025-03-24 15:30:22 +08:00
ea724f4529 Remove the time handler to flush TLBs 2025-03-24 15:30:22 +08:00
63d0a05e14 Adjust VADDR_RANGE in the implementation of PageTableMode for DeviceMode 2025-03-23 21:07:27 +08:00
b1c066c1ad Add logs to DMA mapping and unmapping 2025-03-23 21:07:27 +08:00
9a165ec41a Refactor and rename VirtAddrAllocator to RangeAllocator 2025-03-22 17:38:30 +08:00
11459a6164 Change the visibility of KVirtAreaFreeNode 2025-03-22 17:38:30 +08:00
05ec50def3 Remove the system device's IO memory access 2025-03-22 17:38:30 +08:00
8a26b785a4 Implement IoMemAllocator 2025-03-22 17:38:30 +08:00
0054a8080f Extract VirtAddrAllocator and add alloc_specific API 2025-03-22 17:38:30 +08:00
1f03955f51 Change IoMem directory 2025-03-22 17:38:30 +08:00
d56b7fa6ff Don't force every printer to use if_tdx_enabled 2025-03-22 10:16:43 +08:00
92722aaebb Fix lints in serial.rs 2025-03-22 10:16:43 +08:00
4f0acddfd4 Strict TLB coherence 2025-03-21 21:19:50 +08:00
30ec0be210 Halt the idle CPUs 2025-03-21 21:19:50 +08:00
265bc25dd7 Enable timer IRQs on x86 APs with APIC timer interrupt 2025-03-21 21:19:50 +08:00
f1c7564184 Move CPU context implementations to a specific module 2025-03-21 21:19:50 +08:00
fc67adb1f0 Move arch/cpu/context files
This commit can't compile, turn to the next one instead. But if melding this commit
with the next one, Git cannot detect rename changes.
2025-03-21 21:19:50 +08:00
bb1b41b413 Fix dead code lints 2025-03-21 16:00:35 +08:00
8cc94219a7 Add ktest cases for kernel memory space 2025-03-21 15:15:09 +08:00
624dcf712a Harden the early allocator 2025-03-21 14:09:47 +08:00
b6cf27507c Use TDVMCALL serial output in the early stages of kernel initialization 2025-03-20 17:25:22 +08:00
49e6cd2712 Use macro to handle TDX-related code 2025-03-20 17:25:22 +08:00
dd3aa8fe81 Fix GDT issue when using EFI handover protocol 2025-03-20 17:25:22 +08:00
148695194f Support TDX SMP 2025-03-20 17:25:22 +08:00
248b24fb4e Remove UserSpace abstraction from OSTD 2025-03-20 14:20:47 +08:00
244a34a2fc Add read_with methods to RCU types 2025-03-20 11:57:39 +08:00
79a965374d Add #[must_use] to RCU guards 2025-03-20 11:57:39 +08:00
288942b970 Revise the docs of the slab and remove an unused type 2025-03-14 21:17:47 +08:00
a708a0c046 Inject a scalable slab allocator 2025-03-14 19:55:00 +08:00
fdbe52c2ee Relax AnyFrameMeta's requirement of Debug and 'static 2025-03-14 19:55:00 +08:00
ca9ec119e4 Retire page table implementation in EFI stub 2025-03-14 12:29:13 +08:00
6ed38f5cb0 Mark all physical memory metadata with memory region info 2025-03-14 08:37:37 +08:00
28e7c0ff1f Add a fixed-size cache of frame allocation 2025-03-14 08:37:37 +08:00
5f05963ee5 Inject a scalable buddy system allocator to OSTD
Co-authored-by: Zhe Tang <tangzh@stu.pku.edu.cn>
2025-03-14 08:37:37 +08:00
92bc8cbbf7 Make CPU-local and early ACPI initialization heap-less 2025-03-14 08:37:37 +08:00
7496b24da1 Fix some incorrect memory region initialization 2025-03-14 08:37:37 +08:00
8a6c8c44e9 Refactor MemoryRegionArray::into_non_overlapping 2025-03-14 08:37:37 +08:00
46217ab021 Add range truncate utility 2025-03-14 08:37:37 +08:00
9e1c939a3f Remove static_assertions 2025-03-06 16:35:21 +08:00
0c028a7d8c Adjust AnyFrameMeta safety conditions 2025-03-06 16:35:21 +08:00
0d36375dfa Avoid generic_const_exprs feature 2025-03-06 16:35:21 +08:00
b08e655a76 Remove outdated comments 2025-03-06 16:35:21 +08:00
2cefa7e5fa Remove lots of unsafe code in acpi/ 2025-03-05 19:34:48 +08:00
c5b8eae77e Make the IRQ state within the trap correct 2025-03-03 15:16:42 +08:00
51216daec6 Change MMIO access in IoApic to VolatileRef 2025-03-03 14:25:42 +08:00
a5065d878e Refactor the implementation of RcuOption for clarity 2025-03-03 09:24:49 +08:00
8dbee0a65e Revise the safety conditions for OwnerPtr
Co-authored-by: Zhang Junyang <junyang@stu.pku.edu.cn>
2025-03-03 09:24:49 +08:00