パーソナライズされたPCIeビデオエンコーダベンダーは、カードドライバが正しく機能するために、コンピュータでアクセス制御サービス(ACS)を無効にする必要があると述べました。
彼らは何をすべきか言っていませんでした。
この文書はNVIDIA GPUに関するものです。そのコマンドを使用しているが、setpci
NVIDIAを使用せずにマザーボードが異なるため、デバイスアドレスが異なる(おそらく)。
例えば、
setpci -s 02:01.0 f2a.w=0000
何もしないでください...
編集2 たとえば、
# setpci -v -s 02:04.0 220.w
0000:02:04.0 @220 = 000d
# setpci -v -s 02:04.0 220.w=0000
0000:02:04.0 @220 0000
# setpci -v -s 02:04.0 220.w
0000:02:04.0 @220 = 000d
私のマザーボードで実際のPCIブリッジのレジスタアドレスをどのように見つけますか?
(トリムされた)出力lspci -vvv
は次のとおりです。
編集する
申し訳ありません。オペレーティングシステム情報を忘れました。
32ビットCentos6、カーネル 4.4.127-1.el6.elrepo.i686 #1 SMP Sun Apr 8 09:44:43 EDT 2018 i686 i686 i386 GNU/Linux
00:1c.0 PCI bridge: Intel Corporation Device a114 (rev f1) (prog-if 00 [Normal decode])
Control: I/O+ Mem+ BusMaster+ SpecCycle- MemWINV- VGASnoop- ParErr- Stepping- SERR- FastB2B- DisINTx+
Status: Cap+ 66MHz- UDF- FastB2B- ParErr- DEVSEL=fast >TAbort- <TAbort- <MAbort- >SERR- <PERR- INTx-
Capabilities: [140 v1] Access Control Services
ACSCap: SrcValid+ TransBlk+ ReqRedir+ CmpltRedir+ UpstreamFwd- EgressCtrl- DirectTrans-
ACSCtl: SrcValid- TransBlk- ReqRedir- CmpltRedir- UpstreamFwd- EgressCtrl- DirectTrans-
Kernel driver in use: pcieport
00:1c.5 PCI bridge: Intel Corporation Device a115 (rev f1) (prog-if 00 [Normal decode])
Control: I/O+ Mem+ BusMaster+ SpecCycle- MemWINV- VGASnoop- ParErr- Stepping- SERR- FastB2B- DisINTx+
Status: Cap+ 66MHz- UDF- FastB2B- ParErr- DEVSEL=fast >TAbort- <TAbort- <MAbort- >SERR- <PERR- INTx-
Capabilities: [140 v1] Access Control Services
ACSCap: SrcValid+ TransBlk+ ReqRedir+ CmpltRedir+ UpstreamFwd- EgressCtrl- DirectTrans-
ACSCtl: SrcValid- TransBlk- ReqRedir- CmpltRedir- UpstreamFwd- EgressCtrl- DirectTrans-
02:01.0 PCI bridge: Pericom Semiconductor Device b608 (prog-if 00 [Normal decode])
Control: I/O+ Mem+ BusMaster+ SpecCycle- MemWINV- VGASnoop- ParErr- Stepping- SERR- FastB2B- DisINTx+
Status: Cap+ 66MHz- UDF- FastB2B- ParErr- DEVSEL=fast >TAbort- <TAbort- <MAbort- >SERR- <PERR- INTx-
Capabilities: [220 v1] Access Control Services
ACSCap: SrcValid+ TransBlk+ ReqRedir+ CmpltRedir+ UpstreamFwd+ EgressCtrl+ DirectTrans+
ACSCtl: SrcValid+ TransBlk- ReqRedir+ CmpltRedir+ UpstreamFwd+ EgressCtrl- DirectTrans-
02:02.0 PCI bridge: Pericom Semiconductor Device b608 (prog-if 00 [Normal decode])
Control: I/O+ Mem+ BusMaster+ SpecCycle- MemWINV- VGASnoop- ParErr- Stepping- SERR- FastB2B- DisINTx+
Status: Cap+ 66MHz- UDF- FastB2B- ParErr- DEVSEL=fast >TAbort- <TAbort- <MAbort- >SERR- <PERR- INTx-
Capabilities: [220 v1] Access Control Services
ACSCap: SrcValid+ TransBlk+ ReqRedir+ CmpltRedir+ UpstreamFwd+ EgressCtrl+ DirectTrans+
ACSCtl: SrcValid+ TransBlk- ReqRedir+ CmpltRedir+ UpstreamFwd+ EgressCtrl- DirectTrans-
02:03.0 PCI bridge: Pericom Semiconductor Device b608 (prog-if 00 [Normal decode])
Control: I/O+ Mem+ BusMaster+ SpecCycle- MemWINV- VGASnoop- ParErr- Stepping- SERR- FastB2B- DisINTx+
Status: Cap+ 66MHz- UDF- FastB2B- ParErr- DEVSEL=fast >TAbort- <TAbort- <MAbort- >SERR- <PERR- INTx-
Capabilities: [220 v1] Access Control Services
ACSCap: SrcValid+ TransBlk+ ReqRedir+ CmpltRedir+ UpstreamFwd+ EgressCtrl+ DirectTrans+
ACSCtl: SrcValid+ TransBlk- ReqRedir+ CmpltRedir+ UpstreamFwd+ EgressCtrl- DirectTrans-
02:04.0 PCI bridge: Pericom Semiconductor Device b608 (prog-if 00 [Normal decode])
Control: I/O+ Mem+ BusMaster+ SpecCycle- MemWINV- VGASnoop- ParErr- Stepping- SERR- FastB2B- DisINTx+
Status: Cap+ 66MHz- UDF- FastB2B- ParErr- DEVSEL=fast >TAbort- <TAbort- <MAbort- >SERR- <PERR- INTx-
Capabilities: [220 v1] Access Control Services
ACSCap: SrcValid+ TransBlk+ ReqRedir+ CmpltRedir+ UpstreamFwd+ EgressCtrl+ DirectTrans+
ACSCtl: SrcValid+ TransBlk- ReqRedir+ CmpltRedir+ UpstreamFwd+ EgressCtrl- DirectTrans-
ベストアンサー1
試してみて、出力が改善されていることを確認しますか?
setpci -v -s 02:04.0 ecap_acs+6.w
setpci -v -s 02:04.0 ecap_acs+6.w=0
setpci -v -s 02:04.0 ecap_acs+6.w
編集1: setpci
コマンドがACS拡張に送信されます。いいえ右のオフセットに従います(6)のためのACS制御レジスタ
編集2:方法が気になる場合 PCI設定 ユーティリティはPCI Expressの機能と拡張機能を処理しており、特定のハードウェアポートまたはデバイスへのアクセスの問題を解決しています...もう一つの興味深い視点は、オプションを追加することです -G
。これは通常それほど効率的ではありませんが、ここに示すように、プロセス全体のビューを提供します。能力そして拡張リストを繰り返します。たとえば、ルートポートの場合 -
user@host:~$ sudo setpci -G -v -s 00:01.1 ecap_acs+6.w
Trying method linux-sysfs......using /sys/bus/pci...OK
Decided to use linux-sysfs
0000:00:01.1 0000:00:01.1: Found capability 0001 of type 1 at 0050
0000:00:01.1: Found capability 0010 of type 1 at 0058
0000:00:01.1: Found capability 0005 of type 1 at 00a0
0000:00:01.1: Found capability 000d of type 1 at 00c0
0000:00:01.1: Found capability 0008 of type 1 at 00c8
0000:00:01.1: Found capability 0001 of type 1 at 0050
0000:00:01.1: Found capability 0010 of type 1 at 0058
0000:00:01.1: Found capability 0005 of type 1 at 00a0
0000:00:01.1: Found capability 000d of type 1 at 00c0
0000:00:01.1: Found capability 0008 of type 1 at 00c8
0000:00:01.1: Found capability 000b of type 2 at 0100
0000:00:01.1: Found capability 0001 of type 2 at 0150
0000:00:01.1: Found capability 0019 of type 2 at 0270
0000:00:01.1: Found capability 000d of type 2 at 02a0
0000:00:01.1: Found capability 001e of type 2 at 0370
0000:00:01.1: Found capability 001d of type 2 at 0380
0000:00:01.1: Found capability 0025 of type 2 at 0400
0000:00:01.1: Found capability 0026 of type 2 at 0410
0000:00:01.1: Found capability 0027 of type 2 at 0440
(ecap 000d @2a0) @2a6 = 0000