[英]QEMU .qcow2 mmu_gva_to_gpa crash in Mac OS X
I am trying to run my .qcow2
image in Mac OS X with qemu-system-x86_64
, it works perfectly fine on my Debian machine but for memory problems I need to move it to a Mac OS X Catalina machine.我正在尝试使用
qemu-system-x86_64
在 Mac OS X 中运行我的.qcow2
映像,它在我的 Debian 机器上运行良好,但对于内存问题,我需要将其移动到 Mac OS X Catalina 机器上。 I installed qemu-system-x86_64
through brew
and then when I launch my machine with我通过
brew
安装了qemu-system-x86_64
,然后当我启动我的机器时
qemu-system-x86_64 \
> -m 8G \
> -vga virtio \
> -show-cursor \
> -usb \
> -device usb-tablet \
> -enable-kvm \
> -drive file=/Volumes/enricoWD/transfer_home_laptop/dxcator_home_backup_feb2020/diag-stage.qcow2,if=virtio \
> -accel hvf \
> -cpu host
it starts but after 4 seconds crashes with:它开始但在 4 秒后崩溃:
vmx_write_mem: mmu_gva_to_gpa ffff9ac27b23fcdc failed
vmx_write_mem:mmu_gva_to_gpa ffff9ac27b23fcdc 失败
Abort trap: 6
中止陷阱:6
I saw other users encountered this problem here, but no answer provided.我看到其他用户在这里遇到了这个问题,但没有提供答案。
If anybody has a clue, or suggestion for other ways to run my .qcow2 machine on Mac OS X it would be great!如果有人有线索或建议以其他方式在 Mac OS X 上运行我的 .qcow2 机器,那就太好了! Thanks a lot in advance!
提前非常感谢!
I was able to fix a similar problem using two different methods related to QEMU / KVM CPU model configuration .我能够使用与QEMU/KVM CPU 模型配置相关的两种不同方法来解决类似的问题。 Both used Homebrew's port of QEMU, version 5.1.
两者都使用 Homebrew 的 QEMU 端口,版本 5.1。
Try specifying the CPU model which most closely matches the host machine.尝试指定与主机最匹配的 CPU 型号。
$ sysctl -a | grep machdep.cpu.brand_string
machdep.cpu.brand_string: Intel(R) Core(TM) i5-4690 CPU @ 3.50GHz
$ qemu-system-x86_64 -cpu help
A search at ark.intel.com , for i5-4690
yields only one 3.5 GHz option, so this is my CPU.在ark.intel.com上搜索
i5-4690
只能得到一个 3.5 GHz 选项,所以这是我的 CPU。 Using the Product Collection
and Code Name
, this CPU must correspond to the x86 Haswell-v4
model.使用
Product Collection
和Code Name
,这个 CPU 必须对应x86 Haswell-v4
模型。
$ qemu-system-x86_64 -cpu Haswell-v4 ...
If you still have issues, you can try emulating the CPU instead of using host passthrough.如果仍有问题,您可以尝试模拟 CPU 而不是使用主机直通。 This just requires using the default
qemu64
CPU type .这只需要使用默认的
qemu64
CPU 类型。 You can do this like so:你可以这样做:
$ qemu-system-x86_64 -cpu qemu64 ...
Disable huge pages禁用大页面
-cpu host,-pdpe1gb
-cpu 主机,-pdpe1gb
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.