首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >Ubuntu 22未找到ACPI DMAR表,IOMMU要么在BIOS中禁用,要么在嵌套VM上不受此硬件平台支持

Ubuntu 22未找到ACPI DMAR表,IOMMU要么在BIOS中禁用,要么在嵌套VM上不受此硬件平台支持
EN

Server Fault用户
提问于 2023-01-04 00:10:33
回答 1查看 734关注 0票数 1

我使用的是ubuntu22.04LTS最小服务器。我的主机服务器是用kvm设置的,运行良好。所有测试在运行virt-host-validate时都会通过。

当我创造。虚拟机--我希望它也支持kvm,并且在虚拟机上运行virt-host-validate时,我试图通过所有的检查,这就是Lasubuntu22.04LTS。

我已经更新了关于VM上grub的下列行

代码语言:javascript
复制
GRUB_CMDLINE_LINUX_DEFAULT="intel_iommu=on"
GRUB_CMDLINE_LINUX="cgroup_memory=1 cgroup_enable=memory swapaccount=1 systemd.unified_cgroup_hierarchy=0 intel_iommu=on"

运行sudo update-grub并重新启动VM。我还是会收到警告

代码语言:javascript
复制
  QEMU: Checking for device assignment IOMMU support                         : WARN (No ACPI DMAR table found, IOMMU either disabled in BIOS or not supported by this hardware platform)

我需要通过这个才能正确地使用KubeVirt。

https://pastebin.com/gUtdswz0

在我的主机/硬件上

代码语言:javascript
复制
$ sudo dmesg | grep -e DMAR -e IOMMU
[    0.025208] ACPI: DMAR 0x000000007B7E6000 000364 (v01 INTEL  INTEL ID 00000001 ?    00000001)
[    0.025303] ACPI: Reserving DMAR table memory at [mem 0x7b7e6000-0x7b7e6363]
[    1.958464] DMAR: IOMMU enabled
[    3.615052] DMAR: Host address width 46
[    3.615056] DMAR: DRHD base: 0x000000fbffc000 flags: 0x0
[    3.615070] DMAR: dmar0: reg_base_addr fbffc000 ver 1:0 cap 8d2078c106f0466 ecap f020de
[    3.615079] DMAR: DRHD base: 0x000000c7ffc000 flags: 0x1
[    3.615093] DMAR: dmar1: reg_base_addr c7ffc000 ver 1:0 cap 8d2078c106f0466 ecap f020de
[    3.615100] DMAR: RMRR base: 0x00000079170000 end: 0x00000079172fff
[    3.615107] DMAR: RMRR base: 0x000000791f4000 end: 0x000000791f7fff
[    3.615113] DMAR: RMRR base: 0x000000791de000 end: 0x000000791f3fff
[    3.615118] DMAR: RMRR base: 0x000000791cb000 end: 0x000000791dbfff
[    3.615123] DMAR: RMRR base: 0x000000791dc000 end: 0x000000791ddfff
[    3.615128] DMAR: RMRR base: 0x0000005a62f000 end: 0x0000005a69efff
[    3.615136] DMAR: ATSR flags: 0x0
[    3.615141] DMAR: ATSR flags: 0x0
[    3.615148] DMAR-IR: IOAPIC id 10 under DRHD base  0xfbffc000 IOMMU 0
[    3.615155] DMAR-IR: IOAPIC id 8 under DRHD base  0xc7ffc000 IOMMU 1
[    3.615160] DMAR-IR: IOAPIC id 9 under DRHD base  0xc7ffc000 IOMMU 1
[    3.615166] DMAR-IR: HPET id 0 under DRHD base 0xc7ffc000
[    3.615171] DMAR-IR: Queued invalidation will be enabled to support x2apic and Intr-remapping.
[    3.616770] DMAR-IR: Enabled IRQ remapping in x2apic mode
[    4.937442] DMAR: No SATC found
[    4.937451] DMAR: dmar0: Using Queued invalidation
[    4.937474] DMAR: dmar1: Using Queued invalidation
[    4.968865] DMAR: Intel(R) Virtualization Technology for Directed I/O

在我的第一个VM上

代码语言:javascript
复制
$ sudo dmesg | grep -e DMAR -e IOMMU
[    1.982119] DMAR: IOMMU enabled
EN

回答 1

Server Fault用户

回答已采纳

发布于 2023-01-04 00:37:48

如果您不打算在嵌套的VM中使用PCI passtroughSR-IOV,那么您可以安全地忽略这些警告。

这些技术用于向VM公开物理设备,如视频卡或网卡PCI虚拟功能。

对于主机VM (外部VM),请确保使用vIOMMU启用-device intel-iommu,intremap=on。另见:https://wiki.qemu.org/Features/VT-d

对于virtlib,请参见:https://libvirt.org/formatdomain.html#iommu-devices,您需要如下所示:

代码语言:javascript
复制
票数 2
EN
页面原文内容由Server Fault提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://serverfault.com/questions/1119402

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档