LINUX.ORG.RU

Какие посоветуете самые подробные мануалы по пробросу видеокарты в qemu/kvm ?

 , , ,


4

3

Есть:

жаль для генты нет, но оно не особо дистроспецифично.

Собрал qemu, в ядре kvm и всё, что нужно (по крайне мере по мануалу генты) есть, хочу пробросить Radeon HD 7790 в виндовс 8.1.

Кастую господина Novell-ch, как владельца этой карты и имевшего успех в пробросе.


задавай вопросы русскими предложениями.

darkenshvein ★★★★★
()
cat /etc/init.d/vfio-assign 
#!/sbin/runscript

start() {
  ebegin "Assigning pci devices to vfio-pci"
  modprobe vfio-pci

  for dev in ${DEVICES//" "/ }; do
        vendor=$(cat /sys/bus/pci/devices/$dev/vendor)
        device=$(cat /sys/bus/pci/devices/$dev/device)
        if [ -e /sys/bus/pci/devices/$dev/driver ]; then
                echo $dev > /sys/bus/pci/devices/$dev/driver/unbind
        fi
	echo "Binding device $dev"
        echo $vendor $device > /sys/bus/pci/drivers/vfio-pci/new_id
  done

}

cat /etc/conf.d/vfio-assign 
DEVICES="0000:03:00.0 0000:03:00.1 0000:00:12.0 0000:00:12.2"

Недоинитскрипт для openrc вместо systemd-юнита из арчетреда. Нужен только для rc-update add vfio-assign default.
Собственно, больше ничего гентоспецифичного там нет :)

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

Можешь объяснить, что за цифры у тебя в DEVICES=«» ?

У меня по lspci -n (видео + звук), это:

01:00.0 0300: 1002:665c
01:00.1 0403: 1002:0002

соотв. гружу ядро с pci-stub.ids=1002:665c,1002:0002 , а у тебя id (если это id) какие-то слишком ровные, да и их 4, а не 2.

Или это не то?

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

В DEVICES не vid и pid, а адреса девайсов на шине же.
А зачем тебе PCI Stub вообще? Рассказывай, что у тебя за камень, что за видяха будет на хосте, а какая будет проброшена.

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

у меня AMD-6700 со встройкой HD 8670D на хосте, а для гостя HD 7790

Вот тут мои результаты

спасибо, почитаю.

xinu
() автор топика
Ответ на: комментарий от NeverLoved

Понятно понятно, беру из просто lspci всё, что хочу пробросить.

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

Я параметр pci-stub ядру не передаю вообще, т.к на хосте стоит видео Nvidia, а пробрасывается AMD (для которого нет установленного драйвера -> он ничем не захватывается -> нет необходимости загружать для него pci-stub).

NeverLoved ★★★★★
()
Последнее исправление: NeverLoved (всего исправлений: 1)
Ответ на: комментарий от NeverLoved

я так понял, у меня проблемы:

[    0.014323] [Firmware Bug]: AMD-Vi: IOAPIC[5] not in IVRS table
[    0.014328] [Firmware Bug]: AMD-Vi: No southbridge IOAPIC found
[    0.014329] AMD-Vi: Disabling interrupt remapping
вроде бы есть решение грузиться с amd_iommu_dump и городить костыли.

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

Вау, я такого и не видел...
У меня сначала мать была, GA-990FXA-D3, в ней в биосе были опции Virtualization и IOMMU, но ни на что не влияли. В итоге взял GA-990FXA-UD5, на ней всё взлетело с полпинка. Я дольше с пульсой мудохался, чем проброс настраивал.

NeverLoved ★★★★★
()

Удалось для обойти баг в фирмваре/таблице адресов в биосе, добавлением строки загрузки ядра:

iommu=pt iommu=1 ivrs_ioapic[5]=00:14.0 pci-stub.ids=1002:665c,1002:0002

Получил на ASRock FM2A88M Extreme4+ доступный Passthrough Mode, чего не было ранее:

[    0.323963] AMD-Vi: Found IOMMU at 0000:00:00.2 cap 0x40
[    0.323965] AMD-Vi: Extended features:  PreF PPR GT IA
[    0.323968] AMD-Vi: Interrupt remapping enabled
[    0.324116] AMD-Vi: Event logged [IO_PAGE_FAULT device=00:14.0 domain=0x0000 address=0x000000fdf800ff98 flags=0x0008]
[    0.324191] AMD-Vi: Initialized for Passthrough Mode

(с небольшой ошибочкой IO_PAGE_FAULT, но это не страшно для проброса, насколько я понимаю).

Дело за малым, настроить сам проброс), пока-что только каллейдоскоп цветов вместо seabios.

xinu
() автор топика
Ответ на: комментарий от Novell-ch

Спасибо.

А на твоем асроке были проблемы с AMD-Vi: IOAPIC[5] not in IVRS table или всё чисто из коробки?

xinu
() автор топика
Ответ на: комментарий от Novell-ch

А, ну да, это я протупил, а вот скажи, сейчас ты по прежнему используешь чипсет -M pc-1.3 или перешел на новый -M q35 ?

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

я все это делал год назад и использовал pci-stub а сним только -M pc-1.3 вроде работало, новый vfio метод и соответсвенно -M q35 я так и не сумал завести, показывало только черный эккран, мож сейчас и починили, я давно не игрался с пробросом.

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