1、创新引领 全球首发 四个加速 英雄辈出RISC-V KVM的调试与调优杜超北京奕斯伟计算技术股份有限公司E-solution to win 创新引领 全球首发 四个加速 英雄辈出I.RISC-V KVM-简介与现状II.RISC-V KVM调试-场景与方法III.RISC-V KVM调试-实践与展望IV.RISC-V KVM调优-实践与展望目 录E-solution to win E-solution to win3I.RISC-V KVM 简介与现状E-solution to win4I.RISC-V KVM 简介与现状软件生态支持情况:Linux Kernel:from 5.16QEMU:
2、from 7.0.0AIA/IOMMU:on-going创新引领 全球首发 四个加速 英雄辈出I.RISC-V KVM-简介与现状II.RISC-V KVM调试-场景与方法III.RISC-V KVM调试-实践与展望IV.RISC-V KVM调优-实践与展望目 录E-solution to win E-solution to win6II.RISC-V KVM调试 场景与方法为什么需要调试客户机程序?虚拟化相关驱动调试及Bug FixGuest Kernel调试及Bug FixBIOS/Bootloader调试及Bug FixHypervisor调试及优化深入理解KVM VM的实际运行情况E-
3、solution to win7II.RISC-V KVM调试 场景与方法TargetGDB Remote StubBoardOpenOCDQEMUTCG StubKVMKVM StubTargetGDB Remote StubBoardOpenOCDQEMUTCG StubKVM?创新引领 全球首发 四个加速 英雄辈出I.RISC-V KVM-简介与现状II.RISC-V KVM调试-场景及方法III.RISC-V KVM调试-实践与展望IV.RISC-V KVM调优-实践与展望目 录E-solution to win E-solution to win9III.RISC-V KVM调试 实
4、践与展望支持RISC-V KVM GDB Remote Stub(也被称为KVM Guest Debug):KVM:KVM_CAP_SET_GUEST_DEBUG 0动态配置 hedeleg 寄存器增加 KVM_EXIT_DEBUG 类型的exitQEMU:实现kvm_arch_insert_sw_breakpoint()和kvm_arch_remove_sw_breakpoint()实现kvm_arch_update_guest_debug()实现对KVM_EXIT_DEBUG退出原因的处理E-solution to win10III.RISC-V KVM调试 实践与展望Guest Code
5、Orig Insn0 xabcdb*0 xabcdkvm_insert_breakpoint(0 xabcd)cpu_memory_rw_debug()ebreakkvm_vcpu_ioctl(KVM_SET_GUEST_DEBUG)clear EXC_BREAKPOINT bitE-solution to win11III.RISC-V KVM调试 实践与展望Guest CodeOrig Insn0 xabcdcvm_start()kvm_vcpu_ioctl(KVM_RUN)ebreakE-solution to win12III.RISC-V KVM调试 实践与展望Guest CodeO
6、rig Insn0 xabcdgdb_set_stop_cpu()exit_reason=KVM_EXIT_DEBUGebreakBreakpointExceptionT05thread:p01.01;E-solution to win13III.RISC-V KVM调试 实践与展望QEMU启动命令在-accel kvm基础上加上-S-sE-solution to win14III.RISC-V KVM调试 实践与展望回馈社区 by 奕斯伟计算:Linux Kernel-6.