intel_iommu=on, но нет iommu_groups

intel_iommu=on, но нет iommu_groups

Я пытаюсь настроить VGA Passthrough. В настоящее время пытаюсь сделать это в Ubuntu 16.04 (но я близок к тому, чтобы вернуться к чистому Debian из-за разочарования, в основном не связанного с этим). Я в основном пытался следоватьэто руководство, но я застрял на пути к пониманию группировки IOMMU, поскольку, судя по всему, моя машина не хочет группироваться.

Я установил intel_iommu=on в командной строке ядра и могу проверить это через 'cat /prod/cmdline'. Однако 'find /sys/kernel/iommu_groups/ -type l' ничего не находит, а 'ls /sys/kernel/iommu_groups' показывает пустой каталог. Несмотря на поиск в Google, я не нашел много указаний о том, как разобраться с этим отсюда, и до сих пор не пробовал столько глупых аппаратных трюков в этом направлении, поэтому устранение неполадок шины PCI для меня в новинку.

Что касается оборудования, эта машина имеет Intel E5-1650 v3 на материнской плате Asus X99 E-WS с одной Nvidia Quadro K4000 и одной GTX 970. Я пытаюсь оставить 970 для использования хостом и выделить K4000 для виртуальной машины. С удовольствием предоставлю вывод lspci или virsh ondedev-list, если это поможет, но изначально не буду размещать его здесь, потому что он длинный, и я не думаю, что я даже нахожусь в той точке, где это полезно; насколько я могу судить, что-то лжет о включении iommu .

Редактировать: Итак, сообщается, что:

$ dmesg | grep -e DMAR -e IOMMU
[    0.000000] DMAR: IOMMU enabled
[    0.000000] DMAR: IOMMU enabled

И я еще больше запутался; если бы он не был включен, это могла быть какая-то глупая ошибка grub или модуля ядра с моей стороны. Но я действительно не понимаю, что делать с тем, что он включен, но не делает то, что, как говорят другие ресурсы, он должен делать.

решение1

Я знаю, что это поздно, но проверить, включен ли VT-d, может быть сложно в зависимости от используемого вами UEFI Bios. Для моей материнской платы Asus X99A USB 3.1 настройки для VT-x и VT-d находятся в разных местах.

Для VT-d: Дополнительно => Конфигурация системного агента => Intel VT для направленного ввода-вывода (VT-d)

В моей системе эта функция была отключена, хотя VT-x (в разделе «Дополнительно» => «Конфигурация ЦП» => «Технология виртуализации Intel») был включен.

Убедитесь, что оба включены.

решение2

Я столкнулся с той же проблемой, проверил настройки BIOS и обнаружил, чтоVT-дбыл отключен. Я включил опцию и решил проблему. Может быть, вы могли бы посмотреть руководство по материнской плате или чипсету, чтобы узнать, поддерживает ли ваша машина Intel vt-d.

решение3

У меня была эта проблема на Ubuntu Linux 22, и я тоже нашел решение этой проблемы в моем UEFI BIOS. Я использую AMD 3950x, поэтому полагаюсь на AMD-V вместо VT-d. Моя материнская плата Asrock X570 Phantom Gaming X и у меня есть (3) места для проверки в UEFI для виртуализации и включения IOMMU, а именно:

1.) Дополнительно > Конфигурация ЦП > Поддержка PSS > Включено //Включено по умолчанию

2.) Дополнительно > Конфигурация встроенного устройства > Поддержка SR-IOV > Включить //Отключено по умолчанию

3.) Дополнительно > Конфигурация Super IO > IOMMU > Включить //По умолчанию отключено

Сохраняю и выхожу, но не могу найти свои группы IOMMU заполненными.

Связанный контент