1

У меня проблемы с настройкой VGA-passthrough. Я использую E5-1650v2, Nvidia GTX 970 в качестве основного дисплея и Quadro K4000, через который я хочу перейти на виртуальную машину на Asus X-99 E-WS. Это Ubuntu 16.04. Вт-д включен.

Я попытался привязать K4000 к pci-stub и vfio-pci, и это не работает. В командной строке:

intel_iommu=on pci-stub.ids=10de:11fa,10de:0e0b или

intel_iommu=on vfio-pci.ids=10de:11fa,10de:0e0b

И в /etc/initramfs-tools/modules . Оба метода заканчиваются тем, что аудиоустройство связано с заглушкой или драйвером vfio, соответственно, но драйвер Nvidia всегда захватывает фактическое устройство отображения.

Я пытался установить

nvidia id=10de:13c2,10de:0fbb

(это карта 970) в /etc/initramfs-tools/modules чтобы посмотреть, сработает ли это, но это не имело никакого значения.

Я также попытался отсоединить карту из командной строки, указав идентификатор устройства в /sys/bus/pci/drivers/nvidia/unbind . Это удаляет его из каталога ...drivers/nvidia/ , но также блокирует bash (который уходит на 100% ядра и не может быть уничтожен).

Есть ли способ сказать драйверу Nvidia, чтобы он связывался только с одной картой?

Редактировать:

Чтобы увидеть, будет ли другое поведение, я попытался связать 970 с vfio. Драйвер nvidia по-прежнему захватывает видеоустройство, но, по крайней мере, я вижу, что группа vfio в /dev /vfio делает это, чего я раньше не замечал.

Интересно, как-то задействован порядок PCI ID; K4000 - 06, а 970 - 09, и на K4000 отображается процесс предварительной загрузки и загрузки. Я не вижу способа сообщить BIOS, какую карту сделать «основной», и задаюсь вопросом: если BIOS предпочтет эту карту, ядро откажется связывать драйвер с vfio/stub. Что означало бы, что мне нужно снести его и изменить порядок карт.

1 ответ1

0

Эта работа еще не завершена, но в итоге удалось отменить одну карту как можно раньше. Я добавил системный файл для запуска:

virsh ondedev-detach pci_0000_08_00_0

Для запуска перед модулем lightdm. Затем назначается vfio-pci, и я могу пройти через него как обычно. Я понятия не имею, что отличается между использованием virsh для отсоединения и использованием /sys/bus/ide/drivers/.../unbind, но virsh не блокирует ядро.

Это (а) прохождение 970 и (б) использование драйвера Nouveau; Я вообще не могу заставить его работать с K4000, и больше не пробовал каплю Nvidia из-за нехватки времени. Единственная причина, по которой я могу думать об этом, состоит в том, что это более низкий идентификатор PCI и используется BIOS. Разрушив машину, чтобы проверить эту теорию, придется немного подождать.

Всё ещё ищете ответ? Посмотрите другие вопросы с метками .