LINUX.ORG.RU

Две VGA из одной iommu_group в разные виртуалки

 ,


0

1

Всем привет!

В прошлой теме оказался творческий эксперимент.

Сейчас возник вопрос по возможности проброса двух карт из одной iommu_group в две виртуалки через qemu-kvm.

Запускаю их по отдельности - соответственно все работает картинка выводится с нужных VGA. А запускаю вместе, во второй вылетает эта ошибка:

Ошибка запуска : internal error: early end of file from monitor: possible problem:
2016-08-08T20:51:44.223656Z qemu-system-x86_64: -device vfio-pci,host=01:00.0,bus=root.1,addr=00.0,multifunction=on,x-vga=on: vfio: error opening /dev/vfio/1: Device or resource busy
2016-08-08T20:51:44.223677Z qemu-system-x86_64: -device vfio-pci,host=01:00.0,bus=root.1,addr=00.0,multifunction=on,x-vga=on: vfio: failed to get group 1
2016-08-08T20:51:44.223687Z qemu-system-x86_64: -device vfio-pci,host=01:00.0,bus=root.1,addr=00.0,multifunction=on,x-vga=on: Device initialization failed.
2016-08-08T20:51:44.223696Z qemu-system-x86_64: -device vfio-pci,host=01:00.0,bus=root.1,addr=00.0,multifunction=on,x-vga=on: Device 'vfio-pci' could not be initialized

Правильно я понимаю что это проблема из-за их присутствия в одной iommu_group? Эту проблему можно обойти?

Есть еще третий слот PCI-E x16 v3.0 на материнке, но у него макс 4 pin активных, это наверное будет ощутимая просадка... Но судя по инструкции он окажется на другом iommu.

Ответ на: комментарий от King_Carlo

Конфигурация

Intel Core i7 6700 мать Asus z170 при двух VGA на одну приходится по 8 pin / ограничения на метеринке, да собственно и проц всего 16 линий

Т.е. кроме этих ограничений другие не появятся из-за разделения iommu?

Vetrintsev ()
Ответ на: комментарий от King_Carlo

Я нашел вот эту статью:

https://wiki.archlinux.org/index.php/PCI_passthrough_via_OVMF

Там в самом низу написано разделение iommu групп.

И идет ссылка на пакет:

https://aur.archlinux.org/packages/linux-vfio/

Возможно это покажется странным, но я не знаю ответа на два вопроса:

1. Можно ли установить этот пакет на Debian Jessie? 2. Если да, то как это сделать?

Насколько я понял он сам пропатчит ядро...

Потом просто поправлю grub и все.

Я правильно понял? )))

Vetrintsev ()
Ответ на: Конфигурация от Vetrintsev

Intel Core i7 6700 мать Asus z170 при двух VGA на одну приходится по 8 pin / ограничения на метеринке, да собственно и проц всего 16 линий

Нормально будет бегать 3д, 8 линий от 16 без лупы и фонарика не отличить.

King_Carlo ★★★★★ ()
Ответ на: комментарий от Vetrintsev

Арчепакет нельзя поставить на деревянный же, там в снапшоте есть конфиги ядра (x86 и x86_64), вот так в том пакете собрано ядро, что касается kvm и vfio:

CONFIG_VFIO_IOMMU_TYPE1=m
CONFIG_VFIO_VIRQFD=m
CONFIG_VFIO=m
# CONFIG_VFIO_NOIOMMU is not set
CONFIG_VFIO_PCI=m
CONFIG_VFIO_PCI_VGA=y
CONFIG_VFIO_PCI_MMAP=y
CONFIG_VFIO_PCI_INTX=y
CONFIG_VFIO_PCI_IGD=y
CONFIG_KVM_VFIO=y

CONFIG_KVM_GUEST=y
# CONFIG_KVM_DEBUG_FS is not set
CONFIG_HAVE_KVM=y
CONFIG_HAVE_KVM_IRQCHIP=y
CONFIG_HAVE_KVM_IRQFD=y
CONFIG_HAVE_KVM_IRQ_ROUTING=y
CONFIG_HAVE_KVM_EVENTFD=y
CONFIG_KVM_APIC_ARCHITECTURE=y
CONFIG_KVM_MMIO=y
CONFIG_KVM_ASYNC_PF=y
CONFIG_HAVE_KVM_MSI=y
CONFIG_HAVE_KVM_CPU_RELAX_INTERCEPT=y
CONFIG_KVM_VFIO=y
CONFIG_KVM_GENERIC_DIRTYLOG_READ_PROTECT=y
CONFIG_KVM_COMPAT=y
CONFIG_HAVE_KVM_IRQ_BYPASS=y
CONFIG_KVM=m
CONFIG_KVM_INTEL=m
CONFIG_KVM_AMD=m
CONFIG_KVM_MMU_AUDIT=y
CONFIG_KVM_DEVICE_ASSIGNMENT=y
Скачав снапшот ты найдешь патчи для 4.6.4 ядра, которые наложи сам, вот патч по твоей проблеме (ACS):
0001-Updated-ACS-override-patch-for-4.6.2.patch
далее он приложил всякий мусор, но если у тебя хостовое видео intel, то может пригодится еще
0001-Updated-i915-vga-arbiter-patch-for-4.6.2.patch

Наложи патч, собери ядро с нужными опциями / опакеть его. Не умеешь накладывать патчи или собирать ядра для своего дистра? Открывай новые треды или гугли.

slon ()
Ответ на: комментарий от slon

Спасибо огромное!

Я тоже думаю, что здесь тема развернута максимально! Этот маленький вопрос открыл новые черные дыры в знаниях :)

Буду изучать.

Vetrintsev ()
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.