gpt4 book ai didi

linux - QEMU 无法初始化 NVMe 设备

转载 作者:塔克拉玛干 更新时间:2023-11-03 00:53:08 26 4
gpt4 key购买 nike

我想学习 Linux 中的 NVMe 驱动程序,但我没有物理 NVMe 驱动程序。所以,我觉得QEMU是我目前唯一的选择。我按照以下步骤设置系统,以“root”身份登录:

  1. 从稳定分支克隆的源代码构建 QEMU-2.2.1

    git clone -b stable-2.2 git://git.qemu-project.org/qemu
    ./configure --enable-linux-aio --target-list=x86_64-softmmu
    make clean
    make -j8
    make install

  2. 创建一个 img 并将 CentOS6.6 安装到此镜像中:

    qemu-img create -f raw ./vdisk/16GB.img 16G
    qemu-system-x86_64 -m 1024 -cdrom ./vdisk/CentOS-6.6-x86_64-minimal.iso -hda ./vdisk/16GB.img

  3. 使用 nvme 设备在 QEMU 中运行 CentOS6.6

    qemu-system-x86_64 -m 1024 -hda ./vdisk/16GB.img -device nvme

    但它显示错误信息如下:

    qemu-system-x86_64: -device nvme: Device initialization failed.
    qemu-system-x86_64: -device nvme: Device 'nvme' could not be initialized

  4. 我也在没有 nvme 设备的 QEMU 中运行 CentOS6.6,它运行得很好。

    qemu-system-x86_64 -m 1024 -hda ./vdisk/16GB.img

那么,我怎样才能得到关于这个错误的更多调试信息呢?或者,如果你也有类似的经历,我该如何解决这个问题?

谢谢,
-起重机

最佳答案

找到解决方案:为nvme设备创建一个img,然后像这样启动qemu:

qemu-system-x86_64 -m 2048 -hda ./vdisk/16GB.img -drive file=./vdisk/nvme_dut.img,if=none,id=drv0 -device nvme,drive=drv0,serial=foo --enable-kvm -smp 2

关于linux - QEMU 无法初始化 NVMe 设备,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/29160632/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com