Commit Graph

462 Commits

Author SHA1 Message Date
72fb0752ae Allow dyn InAtomicMode as AsAtomicModeGuard 2025-06-01 15:06:53 +08:00
6dc0189e43 Remove unnecssary overflow checks 2025-05-30 16:34:33 +08:00
282a0f216f Clarify safety conditions in tdx_guest.rs 2025-05-30 16:34:33 +08:00
ffb4097436 Add RISC-V timer support 2025-05-29 19:51:02 +08:00
56e9824dd1 Make current_cpu_racy a method of CpuId 2025-05-29 10:33:02 +08:00
758c80c321 Pull code from arch/*/irq.rs to trap/irq.rs 2025-05-25 10:19:17 +08:00
dd9fc81a81 Add some TODOs in IOMMU initialization 2025-05-25 09:54:16 +08:00
d2ff5fc1a9 Check SAGAW before enabling DMA remapping 2025-05-25 09:54:16 +08:00
79b3f68892 Make the RCU lifetime of page tables explicit 2025-05-24 17:42:17 +08:00
ef81100958 Add InAtomicMode: Debug 2025-05-24 17:42:17 +08:00
3472560c55 Make TLB issuing less contended 2025-05-24 17:42:17 +08:00
54fbdcf059 Implement the stray marking in PT to ensure serializability 2025-05-24 17:42:17 +08:00
5b7637eac3 Remove the activation lock and use RCU to protect PT removal 2025-05-24 17:42:17 +08:00
d873e121ff DFS lock protocol for the page table 2025-05-24 17:42:17 +08:00
d4afe3a035 Avoid Rust references of IRT entries 2025-05-23 10:38:57 +08:00
d4872af3c7 Refactor interrupt remapping in OSTD 2025-05-22 15:21:16 +08:00
95744692a5 Remove unnecessary #[inline] attributes 2025-05-22 12:19:21 +08:00
e81053b9dc Remove unnecessary _rdtsc uses 2025-05-21 21:00:02 +08:00
a18e72b495 Implement apic::get_or_init using Once 2025-05-21 21:00:02 +08:00
0a27a1f37b Don't treat APIC IDs as CPU IDs 2025-05-21 09:27:25 +08:00
d7cd0244ff Use Rust types to store PerApRawInfo 2025-05-21 09:27:25 +08:00
ad6aa4960c Bump the project version 2025-05-12 22:01:05 +08:00
02463ff161 Bump xmas-elf 2025-05-12 22:00:13 +08:00
690f87f311 Add RcuDrop 2025-05-12 16:12:01 +08:00
9cb28f8dd0 FrameRef for all types of frames 2025-05-11 15:42:46 +08:00
773b965767 Allow specifying orderings when loading/storing AtomicCpuSets 2025-05-11 15:29:17 +08:00
d3e4f175cd Fix the memory leak on large heap slot dealloc 2025-05-08 19:49:42 +08:00
18df0f6ec9 Fix the linear mapping size if the IO range is high 2025-05-06 23:33:05 +08:00
1da723c0de Replace the original XArray with RCU-based XArray 2025-04-30 20:59:15 +08:00
ef898e572c Move tdx_guest::unprotect_gpa_range into IoMem creation 2025-04-29 16:31:08 +08:00
04a8fccd2f Add Framebuffer region into filter in IoMemAllocatorBuilder 2025-04-29 14:49:58 +08:00
9b4417e29a Pin the unwinding crate version to 0.2.5 2025-04-29 12:33:55 +08:00
bf4950965b Adjust unsafe blocks in syscall.rs 2025-04-22 20:52:15 +08:00
c9a7d501b2 Rewrite trap/idt.rs 2025-04-22 20:52:15 +08:00
8c30b4b942 Rewrite trap/gdt.rs 2025-04-22 20:52:15 +08:00
e06509e380 Make some unsafe blocks shorter 2025-04-22 20:52:15 +08:00
c3dd607777 Introduce RCU-based XArray 2025-04-19 16:48:15 +08:00
6c0827b681 Add ktest cases for vmspace 2025-04-19 14:00:21 +08:00
52e0776591 Add more page table cases 2025-04-19 13:59:43 +08:00
3aa1079ca6 Clarify the usage of ostd::arch 2025-04-18 13:26:16 +08:00
5630fa8b36 Disable RISC-V FPU by default 2025-04-18 13:26:16 +08:00
14b8c48859 Adjust RISC-V's implementation for recent changes 2025-04-18 13:26:16 +08:00
b097060c5e Clean up RISC-V-specific boot code 2025-04-18 13:26:16 +08:00
d39ab61d68 Remove unnecessary usage of cfg_if macro 2025-04-18 13:26:16 +08:00
47ee012e6b Make IoPort x86-specific 2025-04-18 13:26:16 +08:00
e4aa261c48 Make if_tdx_enabled macro x86-specific 2025-04-18 13:26:16 +08:00
dd67a9a175 Clean up code 2025-04-18 13:26:16 +08:00
1130933546 Remove unused device.rs file in mmio 2025-04-17 19:11:27 +08:00
d6e40933b8 Move the log lock to a better location 2025-04-16 21:59:24 +08:00
67e5e5a651 Remove the unused serial input 2025-04-16 21:59:24 +08:00