KVM(Kernel based Virtual Machine)を語れ 2
■ このスレッドは過去ログ倉庫に格納されています
PCIパススルーについて質問です。
B75チップセットのマザーで、libvirtを使ったPT1&PT2のパススルーがうまくいきません。
PT2の一枚だけPCに挿した状態であれば virsh start hostname で問題なく起動できるのですが
PT1とPT2の二枚を挿した状態で同じことをしようとすると、以下のようにエラーで起動できません。
# virsh start hostname
エラー: ドメイン hostname の起動に失敗しました
エラー: 内部エラー PCI デバイス 0000:06:01.0 をリセットできません: 内部エラー 0000:06:02.0 を持つバス上のアクティブな 0000:06:01.0 デバイス、バスのリセットをしていません
事前に nondev-dettach をすれば起動できるのですが、ゲストPC(Win7)上でパススルーされたデバイスを
使おうとするとデバイスマネージャー上で認識されているにも関わらず、オープンに失敗します。
# virsh nodedev-dettach pci_0000_06_01_0
# virsh nodedev-dettach pci_0000_06_02_0
# virsh start hostname
ドメイン hostname が起動されました ホストはCentOS 6.3で、公式リポジトリに登録されているlibvirt 0.9.10以外にも
本家最新版の1.0.1ソースからコンパイルた物も試してみましたが、変わりませんでした。
libvirtを使わず、qemu-kvmのオプション指定で直接起動した場合はPT1&PT2の二枚構成でも
問題なく起動できているので、構成的にはクリアできていると思います。
# /usr/libexec/qemu-kvm -version
QEMU PC emulator version 0.12.1 (qemu-kvm-0.12.1.2), Copyright (c) 2003-2008 Fabrice Bellard
# lspci
00:1e.0 PCI bridge: Intel Corporation 82801 PCI Bridge (rev a4)
06:01.0 Multimedia controller: Xilinx Corporation Device 211a (rev 01)
06:02.0 Multimedia controller: Xilinx Corporation Device 222a (rev 01)
# lspci -t
-[0000:00]-+-00.0
+-1e.0-[06]--+-01.0
\-02.0
どうにかしてlibvirtで管理したいのですが、この問題を解決する方法はありますでしょうか?
libvirtでPT1やPT2の二枚挿しを正常に起動できているという方もいらっしゃいましたら教えてください。 ■ このスレッドは過去ログ倉庫に格納されています