113 Commits

Author SHA1 Message Date
Yuke Peng
d809eca81d Rename print in framework to early_print 2023-11-23 09:15:37 +08:00
Yuke Peng
34e66a51d9 Reimplement print in std 2023-11-23 09:15:37 +08:00
Chuandong Li
e9544d489f Rename some confusing booleans 2023-11-23 07:10:18 +08:00
Chen Chengjun
5cc9f250dd Implement a guard page for the kernel stack 2023-11-13 08:43:14 +08:00
Zhang Junyang
c776954dfc Print backtrace when there is uncaught panic 2023-11-09 13:22:34 +08:00
Zhang Junyang
ec3daca5fd Add ktest whitelist support 2023-11-09 13:22:34 +08:00
Zhang Junyang
8eb1e06c2a Implement should_panic expectation and refactor ktest 2023-11-09 13:22:34 +08:00
Zhang Junyang
45a6b2f46c Implement should_panic for ktest and clear the codebase 2023-11-09 13:22:34 +08:00
Zhang Junyang
bb0560530f Enable usermode unit test for specific crates 2023-11-09 13:22:34 +08:00
Zhang Junyang
b8818bb740 Add ktest framework 2023-11-09 13:22:34 +08:00
LI Qing
d7cc52c615 Update the version of pod 2023-11-09 03:38:37 +08:00
Yuke Peng
0e7f279bd6 Enable CI for MicroVM 2023-11-08 13:50:10 +08:00
LI Qing
4c72f5b7fa Add VmSegment and rewrite the vm allocation code with VmAllocOptions 2023-11-08 06:31:21 +08:00
LI Qing
b0b25f9282 Add VmReader and VmWriter 2023-11-08 06:31:21 +08:00
Chen Chengjun
cf1d4faab4 Fix a minor bug that lead to a crash in release mode 2023-11-06 08:55:48 +08:00
Yuke Peng
0c7df54513 Impl virtio-mmio transport 2023-10-30 09:39:23 +08:00
Yuke Peng
4d927fed19 Impl virtio-mmio bus 2023-10-30 09:39:23 +08:00
Yuke Peng
0a6aeb4a36 Enable IOApic 2023-10-30 09:39:23 +08:00
Yuke Peng
eeac55e2e5 Refactor console 2023-10-30 09:39:23 +08:00
Zhang Junyang
0a17d90532 Polish namings and interfaces of linux boot 2023-10-26 12:05:12 +08:00
Zhang Junyang
a532340c65 Implement linux x86 32bit legacy boot protocol 2023-10-26 12:05:12 +08:00
Zhang Junyang
9d0e0bbc70 Fix the rust setup machine state 2023-10-26 12:05:12 +08:00
Zhang Junyang
052fc795a5 Successfully entered setup rust entrypoint 2023-10-26 12:05:12 +08:00
Zhang Junyang
922fbd0c91 Minor fix to get entrypoint in the right place 2023-10-26 12:05:12 +08:00
Yuke Peng
aeea333945 Split kernel mode and user mode page table 2023-10-16 17:52:15 -05:00
Zhang Junyang
fb884cd038 Fallback to regular paging for the boot pagetable 2023-10-13 02:24:31 -05:00
Zhang Junyang
503252e8e8 Fix multiboot entry in UEFI boot 2023-10-12 14:38:36 -05:00
Zhang Junyang
cdc2b960dc Switch to EFI boot and use official release for QEMU and GDB 2023-10-12 14:38:36 -05:00
Zhang Junyang
aea8f38dc1 Implement boot setup and loader utils 2023-10-12 14:38:36 -05:00
Zhang Junyang
d0c84e0b6f Add protected mode sub-crate for Linux boot setup 2023-10-12 14:38:36 -05:00
Zhang Junyang
7d5295ab25 Refactor build system, boot and added Linux Boot facilities 2023-10-12 14:38:36 -05:00
Jianfeng Jiang
0d6f6f001c Refactor the implementation 2023-10-10 16:52:40 -05:00
Jianfeng Jiang
bd6a4d34ff Support timeout for WaitQueue 2023-10-10 16:52:40 -05:00
Chuandong Li
7419f6b56b Add the bottom half mechanism of workqueue 2023-10-09 18:08:15 -05:00
Chuandong Li
e2b4302620 Add basic preemptive scheduling 2023-10-09 18:08:15 -05:00
Yuke Peng
d9fcb486c0 Support microvm boot option 2023-09-28 11:52:33 +08:00
Yuke Peng
66a8b404c2 Support multiboot legacy protocol 2023-09-28 11:52:33 +08:00
Hsy-Intel
e8a2779bca Polish trap handler code 2023-09-28 03:47:55 +08:00
Hsy-Intel
f2b2c20967 Handle other CPU exceptions & use trait method 2023-09-28 03:47:55 +08:00
Hsy-Intel
c90f757b86 Polish tdx-guest crate and Jinux VE handler 2023-09-28 03:47:55 +08:00
Hsy-Intel
82518955d7 Abstract the virtual_exception_handler function. 2023-09-28 03:47:55 +08:00
Hsy-Intel
4f0df44b29 Add tdx early init and ve handler functions 2023-09-28 03:47:55 +08:00
Hsy-Intel
d7710207bb make tdcall and tdvmcall public and polish code 2023-09-28 03:47:55 +08:00
Hsy-Intel
12fc074f56 Add tdx-guest crate 2023-09-28 03:47:55 +08:00
Jianfeng Jiang
9ca64c281e Fix clippy and compiler warings 2023-09-05 18:42:06 +08:00
Yuke Peng
dbf5a423b1 Rename IrqAllocateHandle and move alloc functions 2023-09-03 13:36:05 +08:00
Yuke Peng
7d5e67e368 Refactor Virtio 2023-09-03 13:36:05 +08:00
Yuke Peng
df42397cea Remove jinux-pci and hide PCI ports 2023-09-03 13:36:05 +08:00
Yuke Peng
d7bf193bf1 Change IoMem creation to unsafe 2023-09-03 13:36:05 +08:00
Yuke Peng
df81434088 Fix pci framework bugs 2023-09-03 13:36:05 +08:00