qemu-system-i386:无法为 qcow2 header 和 refcount table 分配集群:地址错误

qemu-system-i386: Could not allocate clusters for qcow2 header and refcount table: Bad address

无法在 Mac 10.12.6 上启动 Android 模拟器。我注意到一个输出可能是原因: qemu-system-i386:无法为 qcow2 header 和 refcount table 分配集群:错误地址

下面是使用 -verbose 和 -debug all 选项的更多输出:

emulator: Starting QT main loop

emulator: Android qemu version 27.1.7.0 (build_id 4581633) (CL:b5ec07662db0f9d8644e5fbda7040053a8741bfd)

emulator: Starting QEMU main loop
emulator: android_qemud_init
qemu-system-i386: Could not allocate clusters for qcow2 header and refcount table: Bad address
emulator: Done with QEMU main loop
emulator: found skin 'nexus_6' in directory: /Users/dzhang/Library/Android/sdk/skins/
emulator: (metrics::NullMetricsWriter) created
emulator: (metrics::NullMetricsReporter) created
emulator: (metrics::reportConditional) ignoring
emulator: skin_winsys_get_window_pos
emulator: skin_winsys_get_window_pos: x=0 y=0
emulator: Finished QT main loop

我用谷歌搜索了一下,没有找到任何相关信息。每个代码在这里:https://github.com/qemu/qemu/blob/master/block/qcow2.c 好像打开图片失败了。

更新:创建了一个新图像并收到相同的错误消息。这次模拟器崩溃了,下面是问题报告:

Operating system: Mac OS X
                  10.12.6 16G1212
CPU: amd64
     family 6 model 70 stepping 1
     8 CPUs

Crash reason:  EXC_BAD_ACCESS / KERN_INVALID_ADDRESS
Crash address: 0xd0
Process uptime: 1 seconds

Thread 10 (crashed)
 0  qemu-system-i386 + 0x354677
    rax = 0x00000000000000d0   rdx = 0x0000000000000000
    rcx = 0x00007fb1ea8007c0   rbx = 0x0000700001029000
    rsi = 0x0000000000000000   rdi = 0x000000010eeb8db0
    rbp = 0x0000700001028ef0   rsp = 0x0000700001028ed0
     r8 = 0x0000700000fa8000    r9 = 0x0000000000083000
    r10 = 0x0000000000000001   r11 = 0x0000000000000206
    r12 = 0x000000010d34a660   r13 = 0x0000000000009a17
    r14 = 0x00000000180008ff   r15 = 0x00007fb1ea8007c0
    rip = 0x000000010d34a677
    Found by: given as instruction pointer in context

似乎是 qemu 问题?

我的第一个猜测是您的 QCOW2 来宾磁盘映像已损坏。尝试使用 known-good 磁盘映像?

原来qemu被我们合作的安全软件Cylance屏蔽了,因为它检测到敏感的内存读取操作。需要与 IT 团队联系以更改政策以解除阻止。