« 自宅PCのアップデート(Core i7 8700K → Core i9 10900KF) その2 | トップページ | 懐かしいJ-PhoneとWillcomのティッシュ発見。 »

2021年3月29日 (月)

PT2がBSOD(DRIVER VERIFIER DMA VIOLATION)で動かない(VT-d disableが効いた感じ)

Core i9 10900KF + Z590 Steel Legend Wifi6E にアップグレード後、PCIスロットが無くなったので、PCIe x1 to PCIカードで、PT2を動かす事にした。

使った奴はこれ。(詳しくは、「自宅PCアップグレードの下準備 (PCIスロット付きマザボからの脱却)」を参照

Screenshot_20200827-pciexpress-pcie-to-p

しかし、認識はすれど、EpgDataCap_bon.exeを起動し、BonDriver_PT-S.dl/BonDriver_PT-Tを選択した途端、BSOD発生。

DRIVER VERIFIER DMA VIOLATION

だ。

検索すると、このカードでの動作報告は見つからない。(と思ったら見つけた「ぶっちろぐ」の「EarthSoft PT2 が原因の「PCI スロットの呪縛」から解放」)

まずは、PT2との組み合わせで動作の報告が多数ある「DIRーEB132ーC9」を注文した。

Eb1321

一緒に、PCIe x1の延長ケーブルも注文した。

51hou7ne7l_ac_sl1500_1

翌日・・・

「PT2 DMA VIOLATION」で検索すると、同様の症状の報告が見つかった。

Screenshot_20210330-3pt1-pt2-pt3-rev-171

1

2

見ての通り、DIRーEB132ーC9でも発生の報告があった。うーむ。
Windows 10の20H2のアップデートで発生するようになったとの報告も。

マザーボードを変えたら発生しなくなったとの報告もあった。(「にゃののん日記」の「続・J4125-ITXでPT2を動かすとブルースクリーンで落ちる」)
この報告ではIntel → AMDの変更で解決したようだ。

カーネルDMA保護が関係か?

ここで、エラーのDMA VIOLATIONの文言から、OS側のDMA転送のセキュリティ強化「Kernel DMA Protection」が関係しているのではと思い立った。
Microsoftの「カーネルDMA保護」によれば、1903以降のサポートで、これにはIntel VT-dを使っている。

マザーボードを変えて発生しなくなった報告のマザーには、VT-dの項目はない(AMDだし)

まずは、現状のまま、PT2を再接続し、相変わらずBSODが発生する事を再確認後、EFIでVT-dをdisableにした

VT-dをDisable後

EpgDataCap_bon.exeを起動し、BonDriver_PT-S.dl/BonDriver_PT-Tを選択・・・BSOD発生せず
EpgDataCap_bon.exeを二つ起動し、BonDriver_PT-S.dl/BonDriver_PT-Tでチャンネルスキャン・・・BSOD発生せず
双方で、録画・・・BSOD発生せず
EpgTimerでPT2をチューナーに追加し再起動し、EPG取得・・・BSOD発生せず

良い感じだ。Kernel DMA Protectionが関係していた模様。
セキュリティが弱くなるが、自宅PCで不正なカードを接続され、DMAを使ったハッキングをされる懸念もないし、これでしばらく運用してみる。

DRIVER VERIFIER DMA VIOLATIONとカーネルDMA保護の関連

さて、DRIVER VERIFIER DMA VIOLATIONとKernel DMA Protectionと関係している事はわかった。
が、なんで関係するかがよくわからん。

まずは、他に同様の例がないか「"DRIVER VERIFIER DMA VIOLATION" "KERNEL DMA PROTECTION"」で探す。

見つけた。(「NI」のPXIEコミュニティの「Re: PXIe-8031 in PXIe-1082 causing Driver Verifier DMA Violation BSOD on Win10」)

Screenshot_20210330-pxie8031-in-pxie1082

VTdのdisableがWorkaroundとして紹介されている。
が、ここにはそれ以上の情報はない・・・・

Kernel DMA Protectionの実現方法から探るしかない。ちょっとだけ調べてみた。(答えは見つからなかったが)

Kernel DMA Protectionは、DMAアドレスの仮想化をしている。
それにより問題が起きていると考えると、もしかすると、ACPIのDMAR tableに何か不具合が??
はたまた、PCIe to PCI bridgeのBase/Limitのデコードに何か問題が???

このPCの空き時間があるときにじっくり調べてみたいが、動いちゃってるので本当に調査するかは・・・

さて、注文したPCIe x1 to PCIカード一式はどうしよう。
注文をキャンセルしようと思ったが、仕事柄、もう一個、別種類のPCIe x1 to PCIカードを持っていても良いので、そのままにした。

| |

« 自宅PCのアップデート(Core i7 8700K → Core i9 10900KF) その2 | トップページ | 懐かしいJ-PhoneとWillcomのティッシュ発見。 »

パソコン・インターネット」カテゴリの記事

コメント

コメントを書く



(ウェブ上には掲載しません)




« 自宅PCのアップデート(Core i7 8700K → Core i9 10900KF) その2 | トップページ | 懐かしいJ-PhoneとWillcomのティッシュ発見。 »