V2EX = way to explore
V2EX 是一个关于分享和探索的地方
Sign Up Now
For Existing Member  Sign In
Recommended Services
Amazon Web Services
LeanCloud
New Relic
ClearDB
kakyoin
V2EX  ›  云计算

请问 KVM-QEMU 中当虚拟机 insmod 某个 ko 的时候直接死机,如何进行调试?

  •  
  •   kakyoin · Sep 22, 2021 · 4291 views
    This topic created in 1690 days ago, the information mentioned may be changed or developed.

    如题,虚拟机 insmod 某个 ko 的时候直接死机,ko 在物理机的时候是正常使用的 看不到 bug...一点问题都没有,希望有大佬能帮帮我 谢谢大家

    9 replies    2021-09-23 10:38:26 +08:00
    kakyoin
        1
    kakyoin  
    OP
       Sep 22, 2021
    看不到 bug,一点修的思路都没有...顶顶~
    westoy
        2
    westoy  
       Sep 22, 2021
    虚拟机里 dmesg 和 syslog 都没错误提示么?
    wzxlovesy
        3
    wzxlovesy  
       Sep 22, 2021 via Android
    先看看 KVM 相关的 Log,说不定有有用的信息。如果是 QEMU 闪退,那有可能是什么指令执行错了;如果是 QEMU 宕机没闪退,那尝试用 QEMU 内置的 Monitor Console 看看代码执行到了哪里,卡在哪个内存位置,然后 disassemble 那个位置的代码看看是啥。当然如果能修改 ko 对应的代码的话,print debug 试试。当然还有个猜测是,如果你在宿主机编制了 ko,复制到 QEMU 里运行的话,可能有些编译出来的指令不支持,试试在 QEMU 内部重新编译一下。
    lilogo
        4
    lilogo  
       Sep 22, 2021
    关于指令不支持这个最近也刚踩过坑,建议可以先看下 VM 内 CPU 指令集。
    liuweisj
        5
    liuweisj  
       Sep 22, 2021
    给 vm 加个串口,从 console 会有 log 打印出来
    feather12315
        6
    feather12315  
       Sep 22, 2021 via Android
    启用 kdump
    wzxlovesy
        7
    wzxlovesy  
       Sep 23, 2021 via Android
    @lilogo 我最近踩过另一个深坑是 code segment 错误,导致发生中断时 QEMU 直接崩溃,当时调了很久的 interrupt handler 死活找不到问题……
    kakyoin
        8
    kakyoin  
    OP
       Sep 23, 2021
    @westoy 应该有,但是 insmod 某个 ko,虚拟机直接卡死,就进不去了,之前用 ssh 可以看到一点,但是后面还是卡住了
    kakyoin
        9
    kakyoin  
    OP
       Sep 23, 2021
    @wzxlovesy 好的!谢谢前辈,我去试试
    About   ·   Help   ·   Advertise   ·   Blog   ·   API   ·   FAQ   ·   Solana   ·   1326 Online   Highest 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 53ms · UTC 17:31 · PVG 01:31 · LAX 10:31 · JFK 13:31
    ♥ Do have faith in what you're doing.