我在启动过程中收到此错误。
[15.757121] kfd kfd: error getting iommu info. is the iommu enabled?
[15.757182] kfd kfd: Error initializing iommuv2 for device (1002:1318)
[15.757245] Creating topology SYSFS entries
[15.757376] kfd kfd: device (1002:1318) NOT added due to errors
我该如何修复它?
答案1
错误的 BIOS UEFI 表是一个常见问题,它会产生无法正常工作的 iommu。
如果在 X86 或 AMD64 上尝试:
编辑文件/etc/default/grub
:
换线
GRUB_CMDLINE_LINUX=""
到:
GRUB_CMDLINE_LINUX="iommu=pt"
跑步:
sudo update-grub
重启。
在许多情况下,内核的“pass through”功能也将提供 iommu 功能BIOS是富巴。 HSA 软件堆栈将在具有有效 iommu 功能的系统上运行,而不会触发 iommu 错误消息。
答案2
成立这来自谷歌搜索:
UEFI 启动是一个转移注意力的话题。真正的问题是您需要kfd.rules
一个/etc/udev/rules.d
.该文件必须说明:
KERNEL=="kfd", GROUP="video", MODE="0660"
您可能还需要设置适当的 selinux 策略
restorecon /etc/udev/rules.d/kfd.rules
在 Ubuntu 14.10 中安装 mainline 3.19 在软件包安装过程中创建了此文件(我们认为?),但 Ubuntu 15.04 默认情况下不会创建此文件。你必须手工完成。然后 HSA 软件堆栈就可以工作了!
问题解决了。
答案3
我使用嵌入式 Linux 时遇到了这个错误(在其他错误之间)乌杜螺栓使用来自另一台相同设备的克隆 HD(使用dd
)的设备。
/etc/fstab
使用正确的更新磁盘信息解决了问题UUID
。
在新设备上使用blkid
/fdisk -l
通用唯一标识符的所有磁盘都可以找到并用于更新/etc/fstab
。
答案4
如果您在 AMD GPU 错误之后出现此错误,也请amd_iommu=on
添加。GRUB_CMDLINE_LINUX