dGPU 패스 스루에 대한 VFIO 권한 문제


1

따르려고 해요. 가이드지만 그것을 작동하게 만들 수는 없습니다.

내 dGPU를 통과하려고 시도하고 있지만 :

1) 주요 문제는 내가 VFIO에 대한 권한이 없다는 것입니다. 이 가이드에 따라 문제를 해결했습니다. https://www.evonide.com/non-root-gpu-passthrough-setup/#Permissions_for_non-root_GPU_passthrough

2) 후속 조치는 다음과 같습니다. 메모리를 할당 할 수 없습니다.

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

루트로 실행하면 SDL 장치를 찾을 수 없다는 불만이 있습니다.

3) 나는 OVMF를 작동시킬 수는 없지만, 이것에 뒤따라 추측한다.

내 시스템은 델 XPS 15 9560, 우분투 17.10입니다. 내 현재 qemu 스크립트는 다음과 같습니다.

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

어떤 도움?

답변:


-1

야생에서 그 cpuid 본적이 없어 - 이것을 win10이라고 가정하면 (ovmf / uefi bios)

그리고 왜 당신은 공급 업체 ID를 듣고 있습니까 - 문서화되어 있지 않습니다.

-device vfio-pci, host = 01 : 00.0, 다기능 = on \

당신은 hdmi 오디오를 잊어 버렸습니다. 나는 단지 1 개의 입구와 함께 일을 doesnt한다.

대신이 방법을 시도해보십시오 (꼭 필요한 경우 하나의 행에 넣을 수 있지만 pci는 사용하지 마십시오).

(4300 AMD CPU 미만의 기가 바이트에서 ati r9-290X 또는 7850 (예비)

-USB \

-usb 장치 호스트 : 1002 : 6819 \

-usb 장치 호스트 : 1002 : aab0 \

-device vfio-pci, host = 03 : 00.0, 다기능 = on \

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

나머지는 리눅스와 iommu 컨트롤러가 협력하고 있습니다.

당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.