LINUX.ORG.RU

Ошибка makepkg при компиляции ядра linux-vfio. Как пробросить видеокарту в QEMU?

 , ,


0

1

Делаю проброс видеокарты в QEMU, нужно изменить группы IOMMU, т.к. видеокарта NVIDIA с аудио подсистемой оказались в одной группе с процессором. С этой целью устанавливаю ACS патч для ядра. Изолировал пробрасываемую видеокарту, драйвер vfio-pci связан с ней.

IOMMU Group 0:
        00:00.0 Host bridge [0600]: Intel Corporation Xeon E3-1200 v2/3rd Gen Core processor DRAM Controller [8086:0150] (rev 09)
IOMMU Group 1:
        00:01.0 PCI bridge [0604]: Intel Corporation Xeon E3-1200 v2/3rd Gen Core processor PCI Express Root Port [8086:0151] (rev 09)
        01:00.0 VGA compatible controller [0300]: NVIDIA Corporation GP106 [GeForce GTX 1060 3GB] [10de:1c02] (rev a1)
        01:00.1 Audio device [0403]: NVIDIA Corporation GP106 High Definition Audio Controller [10de:10f1] (rev a1)
IOMMU Group 2:
        00:02.0 VGA compatible controller [0300]: Intel Corporation Xeon E3-1200 v2/3rd Gen Core processor Graphics Controller [8086:0152] (rev 09)
IOMMU Group 3:
        00:16.0 Communication controller [0780]: Intel Corporation 6 Series/C200 Series Chipset Family MEI Controller #1 [8086:1c3a] (rev 04)
IOMMU Group 4:
        00:1a.0 USB controller [0c03]: Intel Corporation 6 Series/C200 Series Chipset Family USB Enhanced Host Controller #2 [8086:1c2d] (rev 05)
IOMMU Group 5:
        00:1b.0 Audio device [0403]: Intel Corporation 6 Series/C200 Series Chipset Family High Definition Audio Controller [8086:1c20] (rev 05)
IOMMU Group 6:
        00:1c.0 PCI bridge [0604]: Intel Corporation 6 Series/C200 Series Chipset Family PCI Express Root Port 1 [8086:1c10] (rev b5)
        00:1c.5 PCI bridge [0604]: Intel Corporation 82801 PCI Bridge [8086:244e] (rev b5)
        03:00.0 PCI bridge [0604]: Intel Corporation 82801 PCI Bridge [8086:244e] (rev 30)
        04:01.0 Ethernet controller [0200]: Realtek Semiconductor Co., Ltd. RTL-8100/8101L/8139 PCI Fast Ethernet Adapter [10ec:8139] (rev 10)
IOMMU Group 7:
        00:1d.0 USB controller [0c03]: Intel Corporation 6 Series/C200 Series Chipset Family USB Enhanced Host Controller #1 [8086:1c26] (rev 05)
IOMMU Group 8:
        00:1f.0 ISA bridge [0601]: Intel Corporation H61 Express Chipset LPC Controller [8086:1c5c] (rev 05)
        00:1f.2 IDE interface [0101]: Intel Corporation 6 Series/C200 Series Chipset Family Desktop SATA Controller (IDE mode, ports 0-3) [8086:1c00] (rev 05)
        00:1f.3 SMBus [0c05]: Intel Corporation 6 Series/C200 Series Chipset Family SMBus Controller [8086:1c22] (rev 05)
        00:1f.5 IDE interface [0101]: Intel Corporation 6 Series/C200 Series Chipset Family Desktop SATA Controller (IDE mode, ports 4-5) [8086:1c08] (rev 05)

Далее делаю по следующей инструкции:

git clone https://aur.archlinux.org/linux-vfio.git
cd linux-vfio
sudo nano /etc/makepkg.conf
locate #MAKEFLAGS=, change to MAKEFLAGS="-j$(nproc)"
CTRL+O, CTRL+X
makepkg -si
sudo nano /etc/default/grub
add pcie_acs_override=downstream same place as enabling iommu GRUB_CMDLINE_LINUX_DEFAULT=
CTRL+O, CTRL+X
sudo grub-mkconfig -o /boot/grub/grub.cfg
reboot
При makepkg -si компиляция идет примерно пол часа, заканчивается следующими ошибками:
Setup is 15420 bytes (padded to 15872 bytes).
System is 8740 kB
CRC f0dc13b6
Kernel: arch/x86/boot/bzImage is ready  (#2)
make[1]: выход из каталога «/home/waitmar/acs/build/linux-vfio/src/archlinux-linux»
make[2]: вход в каталог «/home/waitmar/acs/build/linux-vfio/src/archlinux-linux»
m2c    -o arch/x86/crypto/aegis128-aesni.o arch/x86/crypto/aegis128-aesni.mod
make[2]: m2c: Нет такого файла или каталога
make[2]: *** [<встроенное>: arch/x86/crypto/aegis128-aesni.o] Ошибка 127
make[2]: выход из каталога «/home/waitmar/acs/build/linux-vfio/src/archlinux-linux»
make[1]: *** [scripts/Makefile.modpost:117: __modpost] Ошибка 2
make[1]: выход из каталога «/home/waitmar/acs/build/linux-vfio/src/archlinux-linux»
make: *** [Makefile:1388: modules] Ошибка 2
==> ОШИБКА: Произошел сбой в build().
    Прерывание...



Последнее исправление: waitmar (всего исправлений: 2)

m2c

Хз чё это, но это точно не то, что должно быть на том месте.

post-factum ★★★★★
()

Kernel: arch/x86/boot/bzImage is ready (#2)


так у тебя ядро собралось

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