Я установил Arch(Antergos), чтобы включить PCI-проход для KVM Vms, но если я запустил виртуальную машину, она упала. Я следовал этому уроку.
Мое оборудование:
- Материнская плата: Asrock H97M Pro4
- Процессор: Intel® Core ™ i5-4690, процессор @ 3,50 ГГц × 4
- Графический процессор MSI GTX760 Twin Frozr
- Ram: 16 ГБ
- ОС: Antergos 64Bit
Прежде всего я
- включил VT-d в UEFI
- добавлено intel_iommu = "on" в GRUB_CMDLINE_LINUX_DEFAULT = "" в /etc /default //grub
- обновленный grub
Мои группы IOMMU:
00:00.0 Host bridge [0600]: Intel Corporation 4th Gen Core Processor DRAM Controller [8086:0c00] (rev 06)
00:02.0 VGA compatible controller [0300]: Intel Corporation Xeon E3-1200 v3/4th Gen Core Processor Integrated Graphics Controller [8086:0412] (rev 06)
00:03.0 Audio device [0403]: Intel Corporation Xeon E3-1200 v3/4th Gen Core Processor HD Audio Controller [8086:0c0c] (rev 06)
00:14.0 USB controller [0c03]: Intel Corporation 9 Series Chipset Family USB xHCI Controller [8086:8cb1]
00:16.0 Communication controller [0780]: Intel Corporation 9 Series Chipset Family ME Interface #1 [8086:8cba]
00:19.0 Ethernet controller [0200]: Intel Corporation Ethernet Connection (2) I218-V [8086:15a1]
00:1a.0 USB controller [0c03]: Intel Corporation 9 Series Chipset Family USB EHCI Controller #2 [8086:8cad]
00:1b.0 Audio device [0403]: Intel Corporation 9 Series Chipset Family HD Audio Controller [8086:8ca0]
00:1c.0 PCI bridge [0604]: Intel Corporation 9 Series Chipset Family PCI Express Root Port 1 [8086:8c90] (rev d0)
00:1c.3 PCI bridge [0604]: Intel Corporation 82801 PCI Bridge [8086:244e] (rev d0)
00:1c.4 PCI bridge [0604]: Intel Corporation 9 Series Chipset Family PCI Express Root Port 5 [8086:8c98] (rev d0)
00:1d.0 USB controller [0c03]: Intel Corporation 9 Series Chipset Family USB EHCI Controller #1 [8086:8ca6]
00:1f.0 ISA bridge [0601]: Intel Corporation 9 Series Chipset Family H97 Controller [8086:8cc6]
00:1f.2 SATA controller [0106]: Intel Corporation 9 Series Chipset Family SATA Controller [AHCI Mode] [8086:8c82]
00:1f.3 SMBus [0c05]: Intel Corporation 9 Series Chipset Family SMBus Controller [8086:8ca2]
02:00.0 PCI bridge [0604]: ASMedia Technology Inc. ASM1083/1085 PCIe to PCI Bridge [1b21:1080] (rev 03)
04:00.0 VGA compatible controller [0300]: NVIDIA Corporation GK104 [GeForce GTX 760] [10de:1187] (rev a1)
04:00.1 Audio device [0403]: NVIDIA Corporation GK104 HDMI Audio Controller [10de:0e0a] (rev a1)
Итак, мой GPU состоит из:
- Контроллер VGA: 04: 00.0 (10de: 1187)
- Аудио контроллер: 04: 00.1 (10de: 0e0a)
Затем я создал файл:/etc/modprobe.d/vfio.conf и написал
options vfio-pci ids=10de:1187,10de:0e0a
Затем я создал /etc/mkinitcpio.conf и добавил в MODULES = ""
vfio vfio_iommu_type1 vfio_pci vfio_virqfd
Перезагрузил мою машину и проверил, есть ли у gpu драйвер vfio
lspci -k
04:00.0 VGA compatible controller: NVIDIA Corporation GK104 [GeForce GTX 760] (rev a1)
Subsystem: Micro-Star International Co., Ltd. [MSI] Device 2847
Kernel driver in use: vfio-pci
Kernel modules: nouveau
04:00.1 Audio device: NVIDIA Corporation GK104 HDMI Audio Controller (rev a1)
Subsystem: Micro-Star International Co., Ltd. [MSI] Device 2847
Kernel driver in use: vfio-pci
Kernel modules: snd_hda_intel
Установлено несколько пакетов:
pacman -S qemu libvirt virt-manager
yaourt -S ovmf-git
Отредактировано /etc/libvirt/qemu.conf
nvram = [
"/usr/share/ovmf/x64/ovmf_x64.bin:/usr/share/ovmf/x64/ovmf_vars_x64.bin"
]
запущен / включен libvirt
systemctl enable --now libvirtd
systemctl enable virtlogd.socket
Наконец я создал виртуальную машину:
- Прошивка: UEFI
- CPU: установлен флажок «Копировать конфигурацию процессора хоста»
- вставлен диск Windows
Теперь все началось в виртуальной консоли, и все было хорошо! Затем я добавил свой графический процессор (устройства PCI) и запустил его снова. Теперь он разбился, и я не знаю почему! Там нет сообщений об ошибках.
Я надеюсь, что вы можете помочь мне и спасибо за попытку