Problema de permissão de VFIO com passagem de dGPU

1

Estou tentando seguir o este guia, mas não consigo fazê-lo funcionar.

Estou tentando passar pelo meu dGPU, mas:

1) O principal problema é que eu não tenho permissão para o VFIO. Eu corrigi-lo seguindo este guia: link

2) o acompanhamento é que recebo um: não é possível alocar memória

mamluk@mamluk-xps:~/Projects/kvm$ ./test.sh
qemu-system-x86_64: -device vfio-pci,host=01:00.0,multifunction=on: VFIO_MAP_DMA: -12
qemu-system-x86_64: -device vfio-pci,host=01:00.0,multifunction=on: 
vfio_dma_map(0x55fed7e2ab40, 0x0, 0xa0000, 0x7f1f1fe00000) = -12 (Cannot allocate memory)
qemu-system-x86_64: -device vfio-pci,host=01:00.0,multifunction=on: VFIO_MAP_DMA: -12
qemu-system-x86_64: -device vfio-pci,host=01:00.0,multifunction=on: vfio_dma_map(0x55fed7e2ab40, 0xc0000, 0x7ff40000, 0x7f1f1fec0000) = -12 (Cannot allocate memory)
qemu-system-x86_64: -device vfio-pci,host=01:00.0,multifunction=on: VFIO_MAP_DMA: -12
qemu-system-x86_64: -device vfio-pci,host=01:00.0,multifunction=on: vfio_dma_map(0x55fed7e2ab40, 0x100000000, 0x180000000, 0x7f1f9fe00000) = -12 (Cannot allocate memory)
qemu-system-x86_64: -device vfio-pci,host=01:00.0,multifunction=on: vfio error: 0000:01:00.0: failed to setup container for group 1: memory listener initialization failed for container: Cannot allocate memory

Se for executado como root, ele não poderá encontrar o dispositivo SDL.

3) Eu não posso fazer o OVMF funcionar, mas acho que é o segundo.

Meu sistema é um Dell XPS 15 9560, com o ubuntu 17.10. Meu script qemu atual é

qemu-system-x86_64 \
  -enable-kvm \
  -machine q35,accel=kvm,mem-merge=off \
  -cpu host,kvm=off,hv_vendor_id=vgaptrocks,hv_relaxed,hv_spinlocks=0x1fff,hv_vapic,hv_time \
  -smp 2,cores=2,sockets=1,threads=1 \
  -m 8192 \
  -rtc base=localtime \
  -serial none -parallel none \
  -usb \
  -device usb-host,vendorid=0x413c,productid=0x2110 \
  -device usb-host,vendorid=0x046d,productid=0xc52b \
  -drive file=win10.iso,index=0,media=cdrom \
  -drive file=virtio-win.iso,index=1,media=cdrom \
  -drive file=test.img,format=raw \
  -net nic,model=virtio \
  -net user,smb=/home/mamluk/Projects \
  -device vfio-pci,host=01:00.0,multifunction=on \
  -drive if=pflash,format=raw,readonly=on,file=/usr/share/OVMF/OVMF_CODE.fd \
  -drive if=pflash,format=raw,file=WIN_VARS.fd

alguma ajuda?

    
por Muad'Dib 01.01.2018 / 19:07

1 resposta

-1

nunca vi que cpuid no selvagem- supondo que isso seja win10 (ovmf / uefi bios)

e por que você está listando IDs de fornecedores - isso é indocumentado.

-device vfio-pci, host = 01: 00.0, multifunction = on \

você esqueceu o áudio HDMI. Eu não trabalho com apenas uma entrada.

tente isso em vez disso (você pode colocá-lo em uma linha, se necessário, mas use seus IDs de PCI, não meus):

(ati r9-290X ou 7850 (sobressalente) em gigabyte UDER w 4300AMD cpu)

-usb \

- host do dispositivo de vírus: 1002: 6819 \

- host do dispositivo de vírus: 1002: aab0 \

-device vfio-pci, host = 03: 00.0, multifunction = on \

-device vfio-pci, host = 03: 00.1 \

o resto está no linux e o seu controlador iommu está cooperando.

    
por 29.10.2018 / 08:19