Commit Graph

375 Commits

Author SHA1 Message Date
561516df98 Export /proc/cpuinfo 2024-11-06 14:54:28 +08:00
b3515c498a Improve the scalability for TLB flusher 2024-11-06 10:57:18 +08:00
b3d30f7ac3 Fix pci config errors caused by expression precedence 2024-11-05 14:55:19 +08:00
2c6cbee92f Fix the offset of PCI device class code 2024-11-05 14:55:19 +08:00
c7b3a596dd Disable IRQ during page allocation 2024-11-01 11:24:09 +08:00
7e2e9cebf6 Perform more noncontroversial cleanups 2024-10-31 15:19:20 +08:00
9d5350c2ee Use better names and avoid duplication 2024-10-31 15:19:20 +08:00
cff688e128 Drop the strong reference of Task before exiting 2024-10-28 19:22:17 +08:00
e319641b4d Implement system call sched_get/set_affinity 2024-10-26 22:06:41 +08:00
3468ec213b Use CpuId with validity ensurance rather than u32 2024-10-26 22:06:41 +08:00
b400d287fa Remove ostd::sync::AtomicBits 2024-10-26 22:06:41 +08:00
26c4abde58 Refactor CpuSet and introduce AtomicCpuSet 2024-10-26 22:06:41 +08:00
e60b5b7649 Refine mapping-related locks 2024-10-26 21:55:48 +08:00
da5e7a21cb Avoid potential deadlock in iommu remapping 2024-10-24 19:14:58 +08:00
fe8e451c4f Use read-write lock for the irq callback list 2024-10-24 15:18:26 +08:00
998869d57e Refactor kernel virtual memory allocation for kernel stack and I/O memory 2024-10-21 09:53:05 +08:00
29eb37c07c Introduce kernel virtual memory allocation for kernel stack 2024-10-21 09:53:05 +08:00
709e99d75a Make task functions FnOnce 2024-10-20 13:24:58 +08:00
a716763772 Remove the linkage feature usage for ostd::main 2024-10-20 13:24:58 +08:00
131a25c15c Provide the way to override the panic handler. 2024-10-20 13:24:58 +08:00
b8eff00fb7 Remove the additional IRQ disable during EOI 2024-10-20 13:14:47 +08:00
a43b0b6a52 Fix compile error in riscv64 2024-10-20 13:02:41 +08:00
2f511069ee Move SoftIRQ implementations to softirq component 2024-10-18 09:35:40 +08:00
dc7e0d7a63 Use the HUGE/PAT bit to track the validity of x86 PTEs 2024-10-16 10:25:39 +08:00
2af9916de9 Upgrade the acpi crate to the latest version 2024-10-14 21:03:47 +08:00
c28cec2c6a Fix minor bugs in TDX env 2024-10-14 21:03:47 +08:00
9e4257b655 Fix multiple issues pointed out by the new compiler 2024-10-13 22:32:05 +08:00
d15aacfb4d Fix incorrect behaviors of accessing the boot PT after dismissal 2024-10-12 10:00:36 +08:00
909639fd70 Separate SegmentSlice from Segment 2024-10-09 19:23:46 +08:00
e1e7afe0ca Use node::Entry to optimize page table cursor operations 2024-10-06 17:15:41 +08:00
96f120d957 Clean up some page table implementation 2024-10-06 17:15:41 +08:00
5bdf85b5f0 Regulate the mapping tracking status of page tables 2024-10-06 17:15:41 +08:00
909fb23f8c Call rescue when low memory in heap allocator 2024-10-06 17:14:50 +08:00
2ddcd2d9a7 Add .code64 to the x86 trap assembly 2024-10-04 21:54:48 +08:00
8b69aba0b8 [RISCV] Fix panic when initramfs not exists 2024-10-04 21:53:52 +08:00
8f50391a4e Optimize the clear procedure of the page table 2024-09-30 10:46:30 +08:00
4fa0e6334b Add RISC-V base support 2024-09-30 10:02:08 +08:00
839c2a6689 Extract shared code from timer 2024-09-30 10:02:08 +08:00
5c8e369057 Enable scheduler to fetch scheduling information directly from Thread 2024-09-27 10:21:45 +08:00
9cc63149f1 Remove cpu_affinity field from OSTD Task struct 2024-09-27 10:21:45 +08:00
8927031426 Remove priority field from OSTD Task struct 2024-09-27 10:21:45 +08:00
fad39fdf7a Make TLB flush policy relaxed 2024-09-26 19:29:59 +08:00
52f1787d35 Remove syncronizations for the VmSpace PF handler 2024-09-26 19:29:59 +08:00
ac6d9256ef Improve the VmSpace forking API 2024-09-26 19:29:59 +08:00
14531cd99f Implement allocation-free logging 2024-09-24 20:40:37 +08:00
4d36dd541f Extract x86-specific exception handling in aster-nix 2024-09-23 19:39:45 +08:00
a754accf6a Copy the code from slab_allocator into OSTD and add license header 2024-09-22 12:27:04 +08:00
f26c7a01cd Avoid multiple lock in heap allocator 2024-09-22 12:27:04 +08:00
e995ed3ebc Use slab allocator to allocate heap 2024-09-22 12:27:04 +08:00
9a79ecbcbe Clean up the frame buffer state in ostd::mm 2024-09-21 15:38:15 +08:00