web-dev-qa-db-ja.com

Xen:セカンダリGPUパススルー後のdomUでのグラフィック出力

Linux domUへのセカンダリGPUパススルーを実行しましたが、セカンダリGPUからXorgを出力する方法がわかりません。

Dom0はIntel統合グラフィックカードを使用しています。ここで2つの言及があったので、私はAMD6450をdomUに渡します。
https://wiki.xenproject.org/wiki/Xen_VGA_Passthrough_Tested_Adapters

私がしたことの短いリスト:

  1. マザーボードBIOSでVT-dを有効にする
  2. Dom0GRUBにintel_iommu=onを追加しました
  3. GPUのブラックリストに登録されたモジュールとそのオーディオサブシステム
  4. modprobe xen-pciback
  5. GPUとそのオーディオサブシステムの両方にxl pci-assignable-add _______
  6. Xen構成ファイルに2つのPCIIDを追加しました:pci = [ '_____', '_____' ]
  7. DomUでLinuxを起動してインストールしました

起動すると、上記の手順を実行した後、次のエラーメッセージが表示されます。
libxl: error: libxl_pci.c:1151:libxl__device_pci_reset: The kernel doesn't support reset from sysfs for PCI device 0000:01.00.0
上記のエラーにもかかわらず、domUでlspci -nnkを実行すると、次の行を含むGPUとオーディオサブデバイスが表示されます。
Kernel driver in use: radeon
Kernel driver in use: snd_hda_intel
もちろん、プライマリdomU仮想GPUの行:
Kernel driver in use: cirrus

次に、通過したGPUからモニターにVGAまたはDVIケーブルを接続すると、モニターはオンのままになり(緑色の電源ボタン)、画面が濃い灰色になります。通常、モニターが入力を検出しない場合、モニターはそのままスタンバイ状態になります(オレンジ色の電源ボタン)。したがって、ある種のGPU出力があります。

startxでVNCを介してxrandrを実行すると、物理モニターの兆候は見られず、仮想化されたVNC/cirrusモニターしかないようです。

設定ファイルにgfx_passthru=1を追加すると、起動時に常に失敗します。 gfx_passthru=1を追加したときに最初に表示されるエラーメッセージは次のとおりです。
libxl: error: libxl_dm.c:1302:libxl__build_device_model_args_new: unable to detect required gfx_passthru_kind

仮想化を使用する前は、出力をプライマリ/セカンダリグラフィックカードから別のカードに切り替えるために、通常はBIOSの設定を変更するだけで、Linuxがそれに続きました。したがって、Xorg + domUは私にとって非常に異なる領域です。

この時点以降、domUのセカンダリGPUを介してXorgを出力する方法を知っている人はいますか?オンラインのさまざまなGPUパススルーガイドは、Windowsのみを対象としています。

[〜#〜]更新[〜#〜]

StrongBadの応答後、fglrxが公式のArchリポジトリにないため、ArchdomUからDebianwikidomUからDebian8.8に移動しました。

ただし、Arch domUとは異なり、Debian domUには、パススルーGPUがモニターに接続されている場合、常にオンの緑色の電源ボタンを備えた不思議な濃い灰色のモニター出力がありません。

それにもかかわらず、私は次のことをしました:

  1. インストール済みfglrx
  2. ランSudo aticonfig --initial
  3. /etc/xorg.confDebianwikiから に4行を追加しました

ただし、VNCTTYからstartxを実行すると、クラッシュするだけです。 Xorg.0.logの最初のエラーメッセージは次のように述べています。
(EE) fglrx(0): Failed to open CMMQS connection

2
j-deer

あなたはかなり遠いようです。 Xen 4.4.0(およびそれ以降のいくつかのバージョン)で動作するセカンダリVGAパススルーを多かれ少なかれうまく取得しました。バージョン4.7で問題が発生しましたが、実際にデバッグしようとしたことはありません。正しく思い出せば、作業システムで次のようなエラーも発生しました。

libxl: error: libxl_pci.c:1151:libxl__device_pci_reset: The kernel doesn't support reset from sysfs for PCI device 0000:01.00.0

二次パススルーを機能させようとしているときに、 Xenリストの質問 を尋ねました。解決できない問題が2つありました。 1つ目は、 TTYはプライマリデバイス上にある であるため、ブートメッセージが表示されず、Xセッションしか使用できません。 2番目の問題は、独自の触媒ドライバーしか使用できなかったことです。 Radeonドライバーを使用しようとしているようですので、それが問題である可能性があります。

私はかなり確信していますgfx_passthru=1はプライマリパススルー専用であるため、おそらく必要ありません。 Xenメーリングリストで、多くの苦痛を除けば、プライマリパススルーとセカンダリパススルーの違いは何であるかを尋ねました。 応答 は:

インターフェイスをプライマリとして渡すことの唯一の利点(およびFWIWで実際にこの作業を見たことがない)は、その場合、SeaBIOS POST画面と、その前にdomUOSの起動が進行することを確認できることです。 GPUをロードします

1
StrongBad