Return-Path: Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id ; Mon, 5 Feb 2001 10:33:35 -0500 Received: (majordomo@vger.kernel.org) by vger.kernel.org id ; Mon, 5 Feb 2001 10:33:25 -0500 Received: from r109m245.cybercable.tm.fr ([195.132.109.245]:772 "HELO alph.dyndns.org") by vger.kernel.org with SMTP id ; Mon, 5 Feb 2001 10:33:12 -0500 To: Peter Horton Cc: linux-kernel@vger.kernel.org Subject: Re: VIA silent disk corruption - likely fix In-Reply-To: <20010205150802.A1568@colonel-panic.com> From: Yoann Vandoorselaere Date: 05 Feb 2001 16:32:59 +0100 In-Reply-To: <20010205150802.A1568@colonel-panic.com> Message-ID: <87vgqpw3f8.fsf@mandrakesoft.com> Lines: 51 User-Agent: Gnus/5.0808 (Gnus v5.8.8) Emacs/20.7 MIME-Version: 1.0 Content-Type: multipart/mixed; boundary="=-=-=" Sender: linux-kernel-owner@vger.kernel.org X-Mailing-List: linux-kernel@vger.kernel.org --=-=-= Peter Horton writes: > I've found the cause of silent disk corruption on my A7V motherboard, > and it might affect all boards with the same North bridge (KT133 etc). > > For some reason the IDE controller(s) was sometimes picking up stale > data during bus master DMA to the drive. Assuming that there was no bug > in the CPU it had to be the North bridge that was caching the stuff when > it shouldn't have been. I assume the problem would also apply to other > bus masters (SCSI, NIC etc). > > Scanning the motherboard manual showed up a chipset setting "PCI master > read caching" which I suspect is the culprit. According to the manual > this defaults to "on" for Athlons and "off" for Durons (obviously other > BIOSes / MB might treat this setting differently). Unfortunately my BIOS > does not allow me to change this setting independently [1], I only have > the choice of running the machine in "normal" or "optimal" configuration > to alter this setting ("optimal" is the default). > > In "normal" mode my machine is rock solid and I see no corruption, > however "normal" mode also changes a lot of other settings (AGP speed, > DRAM interleave etc). Anyone experiencing such corruption should look > for a BIOS setting which disables this "feature". > > If anyone out there has a BIOS which allows them to change just this one > setting can they diff the "lspci -vvxxx" output with the setting off and > then on so we can isolate which host bridge biti(s) control this feature. > Maybe we can then add it to 'pci_quirks' and reduce the number of VIA > corruption reports. It seem I have such an options, named K7 CLK_CTL, under Advanced Setting, with two possible choise : Optimal or Default. Here is the output of lspci with each of them, I hope it will help. --=-=-= Content-Type: application/octet-stream Content-Disposition: attachment; filename=with_opt Content-Description: Optimal mode 00:00.0 Host bridge: VIA Technologies, Inc. VT8371 [KX133] (rev 02) Control: I/O- Mem+ BusMaster+ SpecCycle- MemWINV- VGASnoop- ParErr- Stepping- SERR- FastB2B- Status: Cap+ 66Mhz- UDF- FastB2B- ParErr- DEVSEL=medium >TAbort- SERR- 00: 06 11 91 03 06 00 10 22 02 00 00 06 00 00 00 00 10: 08 00 00 d0 00 00 00 00 00 00 00 00 00 00 00 00 20: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 30: 00 00 00 00 a0 00 00 00 00 00 00 00 00 00 00 00 40: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 50: 17 a4 6b b4 41 00 08 08 80 00 04 08 08 08 08 08 60: 03 aa 00 20 50 50 50 50 05 28 65 2f 18 3f 00 00 70: c0 88 ec 0c 0e 81 d2 00 01 f4 09 02 00 00 0c 00 80: 0f 41 00 00 c0 00 00 00 03 00 2a 01 96 00 00 00 90: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 a0: 02 00 20 00 07 02 00 1f 00 00 00 00 6a 02 04 00 b0: 7f 63 02 94 88 66 00 00 00 00 00 00 00 00 00 00 c0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 d0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 e0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 f0: 00 00 00 00 00 00 00 02 22 00 00 00 00 00 00 00 00:01.0 PCI bridge: VIA Technologies, Inc. VT8371 [KX133 AGP] (prog-if 00 [Normal decode]) Control: I/O+ Mem+ BusMaster+ SpecCycle- MemWINV- VGASnoop- ParErr- Stepping- SERR- FastB2B- Status: Cap+ 66Mhz+ UDF- FastB2B- ParErr- DEVSEL=medium >TAbort- SERR- Reset- FastB2B- Capabilities: [80] Power Management version 2 Flags: PMEClk- DSI- D1+ D2- AuxCurrent=0mA PME(D0-,D1-,D2-,D3hot-,D3cold-) Status: D0 PME-Enable- DSel=0 DScale=0 PME- 00: 06 11 91 83 07 00 30 22 00 00 04 06 00 00 01 00 10: 00 00 00 00 00 00 00 00 00 01 01 00 c0 c0 00 00 20: 00 d4 f0 d7 00 d8 f0 d9 00 00 00 00 00 00 00 00 30: 00 00 00 00 80 00 00 00 00 00 00 00 00 00 0c 00 40: 48 cd 00 44 04 72 00 00 00 00 00 00 00 00 00 00 50: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 60: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 70: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 80: 01 00 02 02 00 00 00 00 00 00 00 00 00 00 00 00 90: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 a0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 b0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 c0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 d0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 e0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 f0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00:07.0 ISA bridge: VIA Technologies, Inc. VT82C686 [Apollo Super South] (rev 22) Subsystem: VIA Technologies, Inc. VT82C686/A PCI to ISA Bridge Control: I/O+ Mem+ BusMaster+ SpecCycle- MemWINV- VGASnoop- ParErr- Stepping+ SERR- FastB2B- Status: Cap+ 66Mhz- UDF- FastB2B- ParErr- DEVSEL=medium >TAbort- SERR- TAbort- SERR- TAbort- SERR- TAbort- SERR- TAbort- SERR- TAbort- SERR- [disabled] [size=32K] 00: ec 10 29 80 03 00 00 02 00 00 00 02 00 00 00 00 10: 01 e4 00 00 00 00 00 00 00 00 00 00 00 00 00 00 20: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 30: 00 00 00 00 00 00 00 00 00 00 00 00 0a 01 00 00 40: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 50: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 60: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 70: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 80: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 90: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 a0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 b0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 c0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 d0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 e0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 f0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00:0b.0 Multimedia video controller: Brooktree Corporation Bt848 TV with DMA push (rev 12) Control: I/O- Mem+ BusMaster+ SpecCycle- MemWINV- VGASnoop- ParErr- Stepping- SERR- FastB2B- Status: Cap- 66Mhz- UDF- FastB2B+ ParErr- DEVSEL=medium >TAbort- SERR- TAbort- SERR- [disabled] [size=64K] 00: 00 10 0c 00 47 00 00 02 01 00 00 01 08 20 00 00 10: 01 e8 00 00 00 10 00 db 00 20 00 db 00 00 00 00 20: 00 00 00 00 00 00 00 00 00 00 00 00 e1 1d 07 39 30: 00 00 00 00 00 00 00 00 00 00 00 00 0b 01 1e 40 40: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 50: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 60: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 70: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 80: da 00 00 bf 47 1f 06 03 04 00 86 00 80 00 0f 02 90: ff 00 2b 01 00 ff ff ff 00 f0 35 10 98 23 00 db a0: 00 08 24 00 00 00 00 50 b8 23 00 db c0 23 00 db b0: 00 20 00 db 98 12 2b 01 4e 6d 00 81 c0 43 00 db c0: 8f 15 00 00 63 00 d0 0f 0c 00 80 00 76 0c 00 80 d0: 00 00 e0 80 00 00 e0 80 00 00 e0 80 00 84 00 20 e0: ff 00 2b 01 a0 12 2b 01 80 21 00 82 f3 f5 7e 9c f0: 02 40 0c 00 1a 96 d3 dd 80 24 40 78 47 b6 a1 df 01:00.0 VGA compatible controller: 3Dfx Interactive, Inc. Voodoo 3 (rev 01) (prog-if 00 [VGA]) Subsystem: 3Dfx Interactive, Inc. Voodoo3 AGP Control: I/O+ Mem+ BusMaster- SpecCycle- MemWINV- VGASnoop- ParErr- Stepping- SERR- FastB2B- Status: Cap+ 66Mhz+ UDF- FastB2B+ ParErr- DEVSEL=fast >TAbort- SERR- [disabled] [size=64K] Capabilities: [54] AGP version 1.0 Status: RQ=7 SBA+ 64bit+ FW- Rate=x1,x2 Command: RQ=0 SBA- AGP- 64bit- FW- Rate= Capabilities: [60] Power Management version 1 Flags: PMEClk- DSI+ D1- D2- AuxCurrent=0mA PME(D0-,D1-,D2-,D3hot-,D3cold-) Status: D0 PME-Enable- DSel=0 DScale=0 PME- 00: 1a 12 05 00 03 00 b0 80 01 00 00 03 00 00 00 00 10: 00 00 00 d4 08 00 00 d8 01 c0 00 00 00 00 00 00 20: 00 00 00 00 00 00 00 00 00 00 00 00 1a 12 3a 00 30: 00 00 00 00 54 00 00 00 00 00 00 00 05 01 00 00 40: 01 00 00 00 00 00 00 00 00 00 00 00 1f 00 00 00 50: 00 00 00 00 02 60 10 00 23 02 00 07 00 00 00 00 60: 01 00 21 00 00 00 00 00 00 00 00 00 00 00 00 00 70: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 80: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 90: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 a0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 b0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 c0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 d0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 e0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 f0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 --=-=-= Content-Type: application/octet-stream Content-Disposition: attachment; filename=without_opt Content-Description: Default mode 00:00.0 Host bridge: VIA Technologies, Inc. VT8371 [KX133] (rev 02) Control: I/O- Mem+ BusMaster+ SpecCycle- MemWINV- VGASnoop- ParErr- Stepping- SERR- FastB2B- Status: Cap+ 66Mhz- UDF- FastB2B- ParErr- DEVSEL=medium >TAbort- SERR- 00: 06 11 91 03 06 00 10 22 02 00 00 06 00 00 00 00 10: 08 00 00 d0 00 00 00 00 00 00 00 00 00 00 00 00 20: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 30: 00 00 00 00 a0 00 00 00 00 00 00 00 00 00 00 00 40: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 50: 17 a4 6b b4 41 00 08 08 80 00 04 08 08 08 08 08 60: 03 aa 00 20 50 50 50 50 05 28 65 2f 18 3f 00 00 70: c0 88 ec 0c 0e 81 d2 00 01 f4 09 02 00 00 0c 00 80: 0f 41 00 00 c0 00 00 00 03 00 2a 01 60 00 00 00 90: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 a0: 02 00 20 00 07 02 00 1f 00 00 00 00 6a 02 04 00 b0: 7f 63 02 94 88 66 00 00 00 00 00 00 00 00 00 00 c0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 d0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 e0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 f0: 00 00 00 00 00 00 00 02 22 00 00 00 00 00 00 00 00:01.0 PCI bridge: VIA Technologies, Inc. VT8371 [KX133 AGP] (prog-if 00 [Normal decode]) Control: I/O+ Mem+ BusMaster+ SpecCycle- MemWINV- VGASnoop- ParErr- Stepping- SERR- FastB2B- Status: Cap+ 66Mhz+ UDF- FastB2B- ParErr- DEVSEL=medium >TAbort- SERR- Reset- FastB2B- Capabilities: [80] Power Management version 2 Flags: PMEClk- DSI- D1+ D2- AuxCurrent=0mA PME(D0-,D1-,D2-,D3hot-,D3cold-) Status: D0 PME-Enable- DSel=0 DScale=0 PME- 00: 06 11 91 83 07 00 30 22 00 00 04 06 00 00 01 00 10: 00 00 00 00 00 00 00 00 00 01 01 00 c0 c0 00 00 20: 00 d4 f0 d7 00 d8 f0 d9 00 00 00 00 00 00 00 00 30: 00 00 00 00 80 00 00 00 00 00 00 00 00 00 0c 00 40: 48 cd 00 44 04 72 00 00 00 00 00 00 00 00 00 00 50: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 60: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 70: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 80: 01 00 02 02 00 00 00 00 00 00 00 00 00 00 00 00 90: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 a0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 b0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 c0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 d0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 e0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 f0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00:07.0 ISA bridge: VIA Technologies, Inc. VT82C686 [Apollo Super South] (rev 22) Subsystem: VIA Technologies, Inc. VT82C686/A PCI to ISA Bridge Control: I/O+ Mem+ BusMaster+ SpecCycle- MemWINV- VGASnoop- ParErr- Stepping+ SERR- FastB2B- Status: Cap+ 66Mhz- UDF- FastB2B- ParErr- DEVSEL=medium >TAbort- SERR- TAbort- SERR- TAbort- SERR- TAbort- SERR- TAbort- SERR- TAbort- SERR- [disabled] [size=32K] 00: ec 10 29 80 03 00 00 02 00 00 00 02 00 00 00 00 10: 01 e4 00 00 00 00 00 00 00 00 00 00 00 00 00 00 20: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 30: 00 00 00 00 00 00 00 00 00 00 00 00 0a 01 00 00 40: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 50: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 60: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 70: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 80: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 90: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 a0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 b0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 c0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 d0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 e0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 f0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00:0b.0 Multimedia video controller: Brooktree Corporation Bt848 TV with DMA push (rev 12) Control: I/O- Mem+ BusMaster+ SpecCycle- MemWINV- VGASnoop- ParErr- Stepping- SERR- FastB2B- Status: Cap- 66Mhz- UDF- FastB2B+ ParErr- DEVSEL=medium >TAbort- SERR- TAbort- SERR- [disabled] [size=64K] 00: 00 10 0c 00 47 00 00 02 01 00 00 01 08 20 00 00 10: 01 e8 00 00 00 10 00 db 00 20 00 db 00 00 00 00 20: 00 00 00 00 00 00 00 00 00 00 00 00 e1 1d 07 39 30: 00 00 00 00 00 00 00 00 00 00 00 00 0b 01 1e 40 40: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 50: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 60: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 70: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 80: da 00 00 bf 47 1f 06 03 04 00 86 00 80 00 0f 02 90: ff 00 2b 01 00 ff ff ff 00 f0 35 10 98 23 00 db a0: 00 08 24 00 00 00 00 50 b8 23 00 db c0 23 00 db b0: 00 20 00 db b0 15 2b 01 4e 6d 00 81 c0 43 00 db c0: 8f 15 00 00 9b 00 d0 0f 0c 00 80 00 76 0c 00 80 d0: 00 00 e0 80 00 00 e0 80 00 00 e0 80 00 84 00 00 e0: b8 15 2b 01 00 fa 0d ad 84 35 b4 82 f3 f5 7e 9c f0: 02 00 04 00 1a 96 d3 dd 80 24 40 78 47 b6 a1 df 01:00.0 VGA compatible controller: 3Dfx Interactive, Inc. Voodoo 3 (rev 01) (prog-if 00 [VGA]) Subsystem: 3Dfx Interactive, Inc. Voodoo3 AGP Control: I/O+ Mem+ BusMaster- SpecCycle- MemWINV- VGASnoop- ParErr- Stepping- SERR- FastB2B- Status: Cap+ 66Mhz+ UDF- FastB2B+ ParErr- DEVSEL=fast >TAbort- SERR- [disabled] [size=64K] Capabilities: [54] AGP version 1.0 Status: RQ=7 SBA+ 64bit+ FW- Rate=x1,x2 Command: RQ=0 SBA- AGP- 64bit- FW- Rate= Capabilities: [60] Power Management version 1 Flags: PMEClk- DSI+ D1- D2- AuxCurrent=0mA PME(D0-,D1-,D2-,D3hot-,D3cold-) Status: D0 PME-Enable- DSel=0 DScale=0 PME- 00: 1a 12 05 00 03 00 b0 80 01 00 00 03 00 00 00 00 10: 00 00 00 d4 08 00 00 d8 01 c0 00 00 00 00 00 00 20: 00 00 00 00 00 00 00 00 00 00 00 00 1a 12 3a 00 30: 00 00 00 00 54 00 00 00 00 00 00 00 05 01 00 00 40: 01 00 00 00 00 00 00 00 00 00 00 00 1f 00 00 00 50: 00 00 00 00 02 60 10 00 23 02 00 07 00 00 00 00 60: 01 00 21 00 00 00 00 00 00 00 00 00 00 00 00 00 70: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 80: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 90: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 a0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 b0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 c0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 d0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 e0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 f0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 --=-=-= -- -- Yoann http://www.mandrakesoft.com/~yoann/ An engineer from NVidia, while asking him to release cards specs said : "Actually, we do write our drivers without documentation." --=-=-=-- - To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to majordomo@vger.kernel.org Please read the FAQ at http://www.tux.org/lkml/