ea724f4529
Remove the time handler to flush TLBs
2025-03-24 15:30:22 +08:00
4f0acddfd4
Strict TLB coherence
2025-03-21 21:19:50 +08:00
49e6cd2712
Use macro to handle TDX-related code
2025-03-20 17:25:22 +08:00
148695194f
Support TDX SMP
2025-03-20 17:25:22 +08:00
6ed38f5cb0
Mark all physical memory metadata with memory region info
2025-03-14 08:37:37 +08:00
0dca168717
Use #[expect(lint)]
, not #[allow(lint)]
2025-02-08 15:10:04 +08:00
397ce9652f
Refactor boot modules to make heap allocation explicit
2025-01-02 10:41:51 +08:00
cdac59beda
Implement a new set of physical page APIs
2024-12-27 12:12:51 +08:00
c9a37ccab1
Renaming concepts around pages and frames
...
This commit renames `Frame` -> `UntypedFrame` and `Page` -> `Frame`.
So do other concepts in the following list:
- `Segment` -> `UntypedSegment`,
- `ContPages` -> `Segment`,
- `DynPage` -> `AnyFrame`,
- `PageMeta` -> `FrameMeta`,
- `FrameMeta` -> `UntypedMeta`.
This commit also re-organized the source in the `mm/page` and `mm/frame`
module to accommodate the changes.
2024-12-27 12:12:51 +08:00
60365a818a
Use pointer metadata for page metadata
2024-12-16 13:22:05 +08:00
5233827160
Don't preempt without good reason
2024-11-06 21:53:55 +08:00
c2f7a10b84
Implement cpu_local with GS and ensure GS points to TSS
2024-09-19 13:00:36 +08:00
326ec09169
Initialize local APICs on every processors
2024-09-13 20:10:03 +08:00
5feb8f5de8
Refactor the boot PT initialization for SMP
2024-08-27 17:22:47 +08:00
aeba7bec52
Fix SoftIRQ initialization requirements for SMP
2024-08-27 17:22:47 +08:00
f7a9510be0
Refactor the this_cpu
API with PinCurrentCpu
2024-08-25 20:14:06 +08:00
491e4325fa
Enable IRQs before leaving the OSTD boot routine
2024-08-13 20:34:26 +08:00
fe68b4b510
Generalize single instruction CPU local operations by cpu_local_cell
2024-08-08 19:21:03 +08:00
393c9019c0
Boot application processors into spin loops
...
Co-authored-by: Chuandong Li <lichuand@pku.edu.cn >
2024-07-30 10:24:09 +08:00