エラー:virHostCPUGetKVMMaxVCPUs:KVMはこのプラットフォームではサポートされていません。機能が実装されていません。

エラー:virHostCPUGetKVMMaxVCPUs:KVMはこのプラットフォームではサポートされていません。機能が実装されていません。

私はARM Chromebookモデル「xe303c12」でDebian bookwormを実行しており、KVMを有効にするためにカーネル(5.4)を再コンパイルしたので、システムの音は次のようになります。

$ lsb_release -a

No LSB modules are available.
Distributor ID: Debian
Description:    Debian GNU/Linux 12 (bookworm)
Release:        12
Codename:       bookworm

$ uname -a
Linux chromarietto 5.4.244-stb-cbe
#8 SMP PREEMPT Sat Aug 19 22:19:32 UTC 2023 armv7l GNU/Linux

$ uname -r
5.4.244-stb-cbe

$ kvm-ok
INFO: /dev/kvm exists
KVM acceleration can be used

$ qemu-system-arm --version
QEMU emulator version 5.1.0 (v5.1.0-dirty)
Copyright (c) 2003-2020 Fabrice Bellard and the QEMU Project developers

$ python3 --version
Python 3.11.2

qemu、kvm、およびlibvirtを一緒に接続して、Arm 32ビット用のFreeBSD 13.2を仮想化できるという究極の目標で、ソースからlibvirt 9.7.0、qemu 5.1、virt-managerをインストールしました。私のプラットフォームに関する有用な情報:

root@chromarietto:/home/marietto/Desktop# virt-host-validate


QEMU: Checking if device /dev/kvm exists                                  : PASS
QEMU: Checking if device /dev/kvm is accessible                           : PASS
QEMU: Checking if device /dev/vhost-net exists                            : PASS
QEMU: Checking if device /dev/net/tun exists                              : PASS
QEMU: Checking for cgroup 'cpu' controller support                        : PASS
QEMU: Checking for cgroup 'cpuacct' controller support                    : PASS
QEMU: Checking for cgroup 'cpuset' controller support                     : PASS
QEMU: Checking for cgroup 'memory' controller support                     : PASS
QEMU: Checking for cgroup 'devices' controller support                    : PASS
QEMU: Checking for cgroup 'blkio' controller support                      : PASS

QEMU: Checking for device assignment IOMMU support                        : WARN 
(No ACPI IORT table found, IOMMU not supported by this hardware platform)

QEMU: Checking for secure guest support                                   : WARN 
(Unknown if this platform has Secure Guest support)

LXC: Checking for Linux >= 2.6.26                                         : PASS
LXC: Checking for namespace ipc                                           : PASS
LXC: Checking for namespace mnt                                           : PASS
LXC: Checking for namespace pid                                           : PASS
LXC: Checking for namespace uts                                           : PASS
LXC: Checking for namespace net                                           : PASS
LXC: Checking for namespace user                                          : PASS
LXC: Checking for cgroup 'cpu' controller support                         : PASS
LXC: Checking for cgroup 'cpuacct' controller support                     : PASS
LXC: Checking for cgroup 'cpuset' controller support                      : PASS
LXC: Checking for cgroup 'memory' controller support                      : PASS
LXC: Checking for cgroup 'devices' controller support                     : PASS

LXC: Checking for cgroup 'freezer' controller support                     : FAIL
(Enable 'freezer' in kernel Kconfig file or mount/enable cgroup controller in your system)

LXC: Checking for cgroup 'blkio' controller support                       : PASS
LXC: Checking if device /sys/fs/fuse/connections exists                   : PASS


# lsmod | grep kvm
no errors (I have embedded the options needed to enable KVM inside the kernel)


# virsh --connect qemu:///system capabilities | grep baselabel

<baselabel type='kvm'>+1002:+1002</baselabel>
<baselabel type='qemu'>+1002:+1002</baselabel>

解決できないエラーは次のとおりです。

root@chromarietto:~#  virsh domcapabilities --machine virt --emulatorbin /usr/local/bin/qemu-system-arm

2023-08-29 10:17:59.110+0000: 1763: error : virHostCPUGetKVMMaxVCPUs:1228 : 
KVM is not supported on this platform: Function not implemented ; 
error: failed to get emulator capabilities
error: KVM is not supported on this platform: Function not implemented

デバッグオプションが有効な状態でlibvirtdを実行したときに取得されるログ。

root@chromarietto:~# libvirtd --debug

[Tue, 29 Aug 2023 10:10:11 virt-manager 2141] DEBUG (createvm:494) UEFI found, setting it as default.
[Tue, 29 Aug 2023 10:10:11 virt-manager 2141] DEBUG (createvm:728) Guest type set to os_type=hvm, arch=armv7l, dom_type=kvm
[Tue, 29 Aug 2023 10:10:11 virt-manager 2141] DEBUG (guest:546) Prefer EFI => True
2023-08-29 10:10:12.972+0000: 1765: error : virHostCPUGetKVMMaxVCPUs:1228 : KVM is not supported on this platform: Function not implemented
[Tue, 29 Aug 2023 10:10:12 virt-manager 2141] DEBUG (domcapabilities:250) Error fetching domcapabilities XML
Traceback (most recent call last):
  File "/usr/local/share/virt-manager/virtinst/domcapabilities.py", line 245, in build_from_params
    xml = conn.getDomainCapabilities(emulator, arch,
          ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/usr/lib/python3/dist-packages/libvirt.py", line 4612, in getDomainCapabilities
    raise libvirtError('virConnectGetDomainCapabilities() failed')
libvirt.libvirtError: KVM is not supported on this platform: Function not implemented


2023-08-29 10:10:14.157+0000: 1762: error : virHostCPUGetKVMMaxVCPUs:1228 : KVM is not supported on this platform: Function not implemented

[Tue, 29 Aug 2023 10:10:14 virt-manager 2141] DEBUG (domcapabilities:250) Error fetching domcapabilities XML
Traceback (most recent call last):
  File "/usr/local/share/virt-manager/virtinst/domcapabilities.py", line 245, in build_from_params
    xml = conn.getDomainCapabilities(emulator, arch,
          ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/usr/lib/python3/dist-packages/libvirt.py", line 4612, in getDomainCapabilities
    raise libvirtError('virConnectGetDomainCapabilities() failed')
libvirt.libvirtError: KVM is not supported on this platform: Function not implemented
[Tue, 29 Aug 2023 10:10:14 virt-manager 2141] DEBUG (createvm:497) Error checking for UEFI default
Traceback (most recent call last):
  File "/usr/local/share/virt-manager/virtManager/createvm.py", line 491, in _set_caps_state
    guest.enable_uefi()
  File "/usr/local/share/virt-manager/virtinst/guest.py", line 589, in enable_uefi
    path = self._lookup_default_uefi_path()
           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/usr/local/share/virt-manager/virtinst/guest.py", line 848, in _lookup_default_uefi_path
    raise RuntimeError(_("Libvirt version does not support UEFI."))
RuntimeError: Libvirt version does not support UEFI

誰かがこのエラーを解決するためのいくつかの提案をすることができますか?ありがとうございます。

ベストアンサー1

KVMの32ビットARMサポートは5.2(および5.7カーネル以上)から削除されました。バラよりhttps://qemu.readthedocs.io/en/master/about/removed-features.html#kvm-guest-support-on-32-bit-arm-hosts-removed-in-5-2

おすすめ記事