Commit Graph

231 Commits

Author SHA1 Message Date
ef2419a48c Bump version to 0.10.0 2024-12-02 10:30:32 +08:00
6d3bb5a9d0 Fix compile error caused by updated Step::steps_between in Rust 2024-12-01 18:56:28 +08:00
5e35704e38 Support eagerly FPU state save/restore
Co-authored-by: Shaowei Song <songshaowei.ssw@antgroup.com>
2024-11-29 21:53:14 +08:00
f762eb8913 Remove the lazy_static dependency 2024-11-28 15:28:30 +08:00
5313689d6f Fix deadlock in FLUSH_OPS by disabling IRQ 2024-11-27 12:11:46 +08:00
d67976da88 Support TDX debugging feature 2024-11-26 19:15:22 +08:00
9e5075dab7 Clear DF flag during trap handling to conform to x86-64 calling convention 2024-11-25 14:20:28 +08:00
81898362b6 Add virtio legacy interface 2024-11-21 19:10:06 +08:00
495c93c2ad Refactor Rwlock to take type parameter 2024-11-21 15:46:10 +08:00
f1aae23234 Rename as_ptr_mut to as_mut_ptr 2024-11-21 09:02:58 +08:00
b6944e48bd CpuLocalCell::as_ptr_mut should be safe 2024-11-21 09:02:58 +08:00
3d63ed7a4c Keep interrupts disabled during context switching 2024-11-21 09:02:58 +08:00
9b38eff5fe Avoid Arc instances in switch_to 2024-11-21 09:02:58 +08:00
ec2c6ab7a3 Make Pollee semi-stateless 2024-11-20 16:39:18 +08:00
a4a8807a20 Remove KernelThreadExt 2024-11-13 21:44:37 +08:00
1469059888 Implement CurrentTask 2024-11-13 10:32:54 +08:00
51db2da151 Add ForceSync 2024-11-13 10:32:54 +08:00
11382524d1 Use new SpinLock APIs in wait.rs 2024-11-10 17:42:00 +08:00
1f612e45f7 Remove unnecessary page table items 2024-11-09 20:32:48 +08:00
b2b00bdfd2 Lock-free cursor creation 2024-11-09 20:32:48 +08:00
12aa9fc857 Refactor the document of IOMMU functions 2024-11-09 10:42:46 +08:00
c2626da757 Rename some IOMMU functions 2024-11-09 10:42:46 +08:00
65a95cf6b7 Support Interrupt Remapping in IOMMU 2024-11-09 10:42:46 +08:00
99fdd49076 Support Queue Invalidation in IOMMU 2024-11-09 10:42:46 +08:00
25a918d132 Print who and on which CPU the kernel panics 2024-11-07 16:39:47 +08:00
438dad888e Fix the range of IoMem's reader/writer 2024-11-07 14:18:33 +08:00
5233827160 Don't preempt without good reason 2024-11-06 21:53:55 +08:00
768b182aba Make the code a bit cleaner 2024-11-06 21:53:55 +08:00
c34706603a Special treat VM Space clearing 2024-11-06 21:52:53 +08:00
fda05e9e23 Correct a small syntax error 2024-11-06 21:30:50 +08:00
bebfc360da Fix lost-wakeup in RwMutexUpgradeableGuard_.drop() 2024-11-06 21:30:14 +08:00
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
fe339fd81e Bump version to 0.9.4 2024-10-24 21:00:14 +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