操作系统:Ubuntu 20.04.3 virt-manager 版本:2.2.1
每当我去制作 sparc64 vm 时都会收到此错误消息
Unable to complete install: 'internal error: process exited while connecting to monitor: 2021-10-15T02:48:09.558938Z qemu-system-sparc64: -device piix3-usb-uhci,id=usb,bus=pci,addr=0x2: PCI: slot 2 function 0 not available for piix3-usb-uhci, reserved'
我无法移除此 USB 控制器设备,如果我右键单击控制器并将其移除,它会立即重生。如果我在概览或设备本身上删除此 USB 控制器的 XML 条目,它也会立即重生。如果我尝试更改地址、插槽或功能,它会给出相同的错误消息或显示“由 pbm-bridge 使用”。
是的,我安装了 qemu-system-sparc,是的,我安装了 openbios-sparc,是的,让它工作的唯一方法是使用 qemu,不涉及 virt-manager,但我想使用 virt-manager 以方便使用和访问。我也不知道如何使用 virsh 修改它,因为当我列出虚拟机时,我什么也得不到,尽管 virt-manager 中有 2 个虚拟机。
我也尝试过用谷歌搜索这个问题,但没有结果。
答案1
这可能是 libvirt 针对 sparc64 的 PCI 地址分配逻辑中的一个错误。不幸的是,这并不完全令人惊讶,因为 sparc64 现在很少受到关注,因此没有经过很好的测试。我鼓励您将此问题报告给 libvirt 的上游错误跟踪器。
答案2
您必须model=none
在 usb 行上指定并删除address
USB 的任何部分,如下所示:
<controller type='usb' index='0' model='none'/>
下面的 XML 对我有用:
<domain type='qemu'>
<name>debian12-sparc64</name>
<uuid>d2263087-f38a-470d-816e-4c885d1dd1c6</uuid>
<memory unit='KiB'>4194304</memory>
<currentMemory unit='KiB'>4194304</currentMemory>
<vcpu placement='static'>1</vcpu>
<os>
<type arch='sparc64' machine='sun4u'>hvm</type>
<boot dev='hd'/>
</os>
<clock offset='utc'/>
<on_poweroff>destroy</on_poweroff>
<on_reboot>restart</on_reboot>
<on_crash>destroy</on_crash>
<devices>
<emulator>/usr/bin/qemu-system-sparc64</emulator>
<controller type='pci' index='0' model='pci-root'/>
<controller type='usb' index='0' model='none'/>
<serial type='pty'>
<target port='0'/>
</serial>
<console type='pty'>
<target type='serial' port='0'/>
</console>
<audio id='1' type='none'/>
<memballoon model='none'/>
</devices>
</domain>