
GTX 1080(ドライバ)とPCIパススルーにバグがあると思います。
私のホストはUbuntu 14.04システムです。私のゲストはUbuntu 14.04/16.04システムです(両方とも同じことをします)。
ゲスト VM 内でデバイスを表示できます。
$ lspci -vnn | grep VGA
00:05.0 VGA compatible controller: NVIDIA Corporation Device 1b80 (rev a1)
ドライバー(370.2、最新のドライバー)を正常にインストールできました。インストールされていますが認識されませんnvidia-smi
。
$ nvidia-smi
Unable to determine the device handle for GPU 0000:00:05.0: Unknown Error
表示すると、dmesg
次のエラーメッセージが表示されます。
[29.535583] nvidia 0000:00:05.0: irq 45 for MSI/MSI-X
[29.577727] NVRM: RmInitAdapter failed! (0x23:0x56:458)
[29.577807] NVRM: rm_init_adapter failed for device bearing minor number 0
GTX 1080を別のカード(M4000、パススルーを実行してゲストコンピュータにドライバをインストールする)と交換すると機能します。明日別のGeforceカードを試してみましょう。
NVidiaフォーラムの他の人私も同じ質問があります(答えはありません)。
これをさらにデバッグする方法はありますか?
答え1
私は同じ問題があり、答えを見つけました。https://www.evonide.com/non-root-gpu-passthrough-setup/。-cpu host,kvm=off
qemuコマンドラインに追加する必要があります。私はganetiを使用しているので、次の問題を解決しました。
gnt-instance modify -H cpu_type="host\,kvm=off"
私が正しく理解した場合、このフラグはゲストのKVMアクセラレーションをオフにしませんが、ゲスト-machine pc,accel=kvm
のネストされたKVMアクセラレーションをオフにします(したがって、ゲストでKVM仮想マシンを実行することはできません)。
答え2
私はたくさん貢献できるかもしれません。 nvidiaがpciパススルーの試みを積極的に弱めているようです(Quadroカードを購入するだけです)。
x-pci-vendor-id=0x10DE,x-pci-device-id=0x11BA,x-pci-sub-vendor-id=0x10DE,x-pci-sub-device-id=0x0965
パラメータを追加してpciデバイスIDを偽造してみてください-device vfio-pci,
。これにより、Quadro K5000のふりをすることができます。
答え3
私はしばらくこの問題で苦労しました。 GPUがシステムに唯一のGPUである場合は、独立して作成するにはgrubとlinuxをインストールする必要があります。シリアルコンソールでコンピュータを起動しましたが、重要なのはvideo = efifb:offです。
GRUB_CMDLINE_LINUX="console=tty1 console=ttyS0,115200" GRUB_TERMINAL="コンソールシリアル" GRUB_SERIAL_COMMAND="シリアル --speed=115200 --unit=0 --word=8 --parity=no --stop=1 "GRUB_CMD 「静かなブートビデオ= eifb:intel_iommu = on-console = ttyS0,115200オフ」
https://unix.stackexchange.com/questions/328534/driver-for-gtx-1080-doesnt-work-on-guest-when-using-kvm-pci-passthrough