BSOD z kodem 9C

Witam,

Co kilka dni pojawia się u mnie niebieski ekran (BSOD) z kodem: 9C, {1, bab3c050, b6000000, 181}. Dzieje się to praktycznie od momentu złożenia maszyny czyli od ok. 5 miesięcy. Dla przejrzystości posta podzielę go na kilka części opisując: moją konfiguracje sprzętową, jakie są/były objawy, co robiłem żeby wykryć przyczynę problemu i na koniec zamieszczę wynik z windbg.

Krótko o mnie:

Jestem programistą, więc jestem otwarty na „ekstremalne” metody znalezienia przyczyny tego błędu (zwłaszcza programowo). Maszynę potrzebuje do pracy więc np oddanie płyty głównej do serwisu na miesiąc (nie będąc pewnym że to ona stanowi problem) mija się z celem.

Konfiguracja sprzętowa:

Płyta główna: DFI Infinity nF SLI-M2/G (nForce4 SLI)

Processor: Athlon 64 x2 5200+ s.AM2 BOX

Ram: Geil 2GB DDR2 800 Dual Chanel Kit Ultra 4

Karta graficzna: GeForce 8600 GE Galaxy 256MB HDTV & DVI (PCI-E) OC CoolerMaster

Zasilacz: Chieftec GPS-450AA-101A ATX 450 Watt

Obudowa: CoolerMaster Centurion 534 Lite Black

HDD 1: Seagate ST3250410AS 250GB sATA II 16MB

HDD 2: Seagate ST3320620AS 320GB sATA II 16MB

DVD: Pioneer DVD+/-RW DVR-212 bulk black (Serial ATA)

Niczego nie podkręcałem wszystkie podzespoły od początku działają na fabrycznych ustawieniach.

Sytem: Windows XP PRO SP2

Jakie były/są objawy:

  • Na samym początku maszyna resetowała się podczas odtwarzania płyt audio, nie od razu po włożeniu płyty lecz po jakimś czasie powiedzmy po 1h, dotyczyło to też porysowanych płyt cd/dvd.

  • Zaczęły się pojawiać niebieskie ekrany zawsze z tym samym kodem błędu: 9C, {1, bab3c050, b6000000, 181}

  • Na BSOD nie ma wpływu duże obciążenie, pojawia się w czasie normalnej pracy, raz rano raz pod wieczór wiec czas pracy tez nie ma na niego wpływu

Co zrobiłem do tej pory (nie przyniosło oczekiwanego rezultatu):

  • Czytałem różne fora, artykuły itd. próbując naprawić problem

  • Wgrałem najnowszy bios do płyty głownej

  • Przetestowałem pamięć: memtest86-3.4a odpalonym z cd (kilka godzin) – brak błędów pamięci

  • Zainstalowałem najnowsze sterowniki, do czego tylko się dało

  • Odinstalowałem sterowniki, które niby miały być przyczyną BSOD wg windbg

  • Przełożyłem pamięci do innych banków

  • Odłączyłem DVD (ten problem z resetami podczas odtwarzania cd zniknął po usunięciu sterowników NVIDIA IDE)

  • Zamontowałem dodatkowe chłodzenie temp spadła o ok 2C (teraz CPU ~26C Chipset ~57C)

  • Kupiłem 2 dysk (HDD 2) zainstalowałem na nim czysty system ze sterownikami, wystąpił BSOD więc odłączyłem 1 dysk (HDD 1), też się pojawił BSOD (przy podłączonym tylko HDD 2 i czystym systemie)

windbg

Sterowniki które niby miały powodować błąd:

nvatabus.sys

ntkrpamp.exe

i8042prt.sys

nvata.sys

AmdK8.sys

PCIIDEX.SYS

Mam większość minidumpów i ostatni zrzut pamięci jądra (150mb), wiec jeżeli ktoś potrafi wyciągnąć z nich więcej niż ja i byłby skłonny mi pomóc to je mu udostępnię.

Wynik z windbg ostatniego zrzutu pamięci:

Microsoft ® Windows Debugger Version 6.6.0007.5

Copyright © Microsoft Corporation. All rights reserved.



Loading Dump File [c]

Kernel Summary Dump File: Only kernel address space is available


Symbol search path is: srv*http://msdl.microsoft.com/download/symbols

Executable search path is: c:\windows\i386

Windows XP Kernel Version 2600 (Service Pack 2) MP (2 procs) Free x86 compatible

Product: WinNt, suite: TerminalServer SingleUserTS

Built by: 2600.xpsp_sp2_gdr.070227-2254

Kernel base = 0x804d7000 PsLoadedModuleList = 0x8055c700

Debug session time: Mon Apr 21 13:26:25.343 2008 (GMT+2)

System Uptime: 0 days 1:34:07.062

WARNING: Process directory table base 00732000 doesn't match CR3 0A4D0020

WARNING: Process directory table base 00732000 doesn't match CR3 0A4D0020

Loading Kernel Symbols

................................................................................

....................................................

Loading User Symbols


Loading unloaded module list

............

*******************************************************************************

* *

* Bugcheck Analysis *

* *

*******************************************************************************


Use !analyze -v to get detailed debugging information.


BugCheck 9C, {1, bab3c050, b6000000, 181}


Probably caused by : i8042prt.sys ( i8042prt!I8042MouseInterruptService+2 )


Followup: MachineOwner

---------


1: kd> !analyze -v

*******************************************************************************

* *

* Bugcheck Analysis *

* *

*******************************************************************************


MACHINE_CHECK_EXCEPTION (9c)

A fatal Machine Check Exception has occurred.

KeBugCheckEx parameters;

    x86 Processors

        If the processor has ONLY MCE feature available (For example Intel

        Pentium), the parameters are:

        1 - Low 32 bits of P5_MC_TYPE MSR

        2 - Address of MCA_EXCEPTION structure

        3 - High 32 bits of P5_MC_ADDR MSR

        4 - Low 32 bits of P5_MC_ADDR MSR

        If the processor also has MCA feature available (For example Intel

        Pentium Pro), the parameters are:

        1 - Bank number

        2 - Address of MCA_EXCEPTION structure

        3 - High 32 bits of MCi_STATUS MSR for the MCA bank that had the error

        4 - Low 32 bits of MCi_STATUS MSR for the MCA bank that had the error

    IA64 Processors

        1 - Bugcheck Type

            1 - MCA_ASSERT

            2 - MCA_GET_STATEINFO

                SAL returned an error for SAL_GET_STATEINFO while processing MCA.

            3 - MCA_CLEAR_STATEINFO

                SAL returned an error for SAL_CLEAR_STATEINFO while processing MCA.

            4 - MCA_FATAL

                FW reported a fatal MCA.

            5 - MCA_NONFATAL

                SAL reported a recoverable MCA and we don't support currently

                support recovery or SAL generated an MCA and then couldn't

                produce an error record.

            0xB - INIT_ASSERT

            0xC - INIT_GET_STATEINFO

                  SAL returned an error for SAL_GET_STATEINFO while processing INIT event.

            0xD - INIT_CLEAR_STATEINFO

                  SAL returned an error for SAL_CLEAR_STATEINFO while processing INIT event.

            0xE - INIT_FATAL

                  Not used.

        2 - Address of log

        3 - Size of log

        4 - Error code in the case of x_GET_STATEINFO or x_CLEAR_STATEINFO

    AMD64 Processors

        1 - Bank number

        2 - Address of MCA_EXCEPTION structure

        3 - High 32 bits of MCi_STATUS MSR for the MCA bank that had the error

        4 - Low 32 bits of MCi_STATUS MSR for the MCA bank that had the error

Arguments:

Arg1: 00000001

Arg2: bab3c050

Arg3: b6000000

Arg4: 00000181


Debugging Details:

------------------


   NOTE: This is a hardware error. This error was reported by the CPU

   via Interrupt 18. This analysis will provide more information about

   the specific error. Please contact the manufacturer for additional

   information about this error and troubleshooting assistance.


   This error is documented in the following publication:


      - Bios and Kernel Developers Guid for AMD Athlon® 64 and AMD Opteron® Processors

   Bit Mask:


       MA Model Specific MCA

    O ID Other Information Error Code Error Code

   VV SDP ___________|____________  _______|_______  _______|______

   AEUECRC| | | |

   LRCNVVC| | | |

   ^^^^^^^| | | |

      6 5 4 3 2 1

   3210987654321098765432109876543210987654321098765432109876543210

   ----------------------------------------------------------------

   1011011000000000000000000000000000000000000000000000000110000001



VAL - MCi_STATUS register is valid

        Indicates that the information contained within the IA32_MCi_STATUS

        register is valid. When this flag is set, the processor follows the

        rules given for the OVER flag in the IA32_MCi_STATUS register when

        overwriting previously valid entries. The processor sets the VAL 

        flag and software is responsible for clearing it.


UC - Error Uncorrected

        Indicates that the processor did not or was not able to correct the 

        error condition. When clear, this flag indicates that the processor

        was able to correct the error condition.


EN - Error Enabled

        Indicates that the error was enabled by the associated EEj bit of the

        IA32_MCi_CTL register.


ADDRV - IA32_MCi_ADDR register valid

        Indicates that the IA32_MCi_ADDR register contains the address where

        the error occurred.


PCC - Processor Context Corrupt

        Indicates that the state of the processor might have been corrupted

        by the error condition detected and that reliable restarting of the

        processor may not be possible.


MEMHIRERR - Memory Hierarchy Error {TT}CACHE{LL}_{RRRR}_ERR

        These errors match the format 0000 0001 RRRR TTLL




   Concatenated Error Code:

   --------------------------

   _VAL_UC_EN_ADDRV_PCC_MEMHIRERR_81


   This error code can be reported back to the manufacturer.

   They may be able to provide additional information based upon

   this error. All questions regarding STOP 0x9C should be

   directed to the hardware manufacturer.


BUGCHECK_STR: 0x9C_IA32_AuthenticAMD


DEFAULT_BUCKET_ID: DRIVER_FAULT


PROCESS_NAME: Idle


LAST_CONTROL_TRANSFER: from 806e7bff to 804f9deb


STACK_TEXT:  

bab3c028 806e7bff 0000009c 00000001 bab3c050 nt!KeBugCheckEx+0x1b

bab3c154 806e2c52 bab38d70 00000000 00000000 hal!HalpMcaExceptionHandler+0xdd

bab3c154 baa6fd82 bab38d70 00000000 00000000 hal!HalpMcaExceptionHandlerWrapper+0x4a

bacd3c9c 805448e5 898908b0 89877ad8 01010009 i8042prt!I8042MouseInterruptService+0x2

bacd3c9c baa09c46 898908b0 89877ad8 01010009 nt!KiInterruptDispatch+0x45

bacd3d50 80544f8c 00000000 0000000e 00000000 processr!AcpiC1Idle+0x12

bacd3d54 00000000 0000000e 00000000 00000000 nt!KiIdleLoop+0x10



STACK_COMMAND: kb


FOLLOWUP_IP: 

i8042prt!I8042MouseInterruptService+2

baa6fd82 55 push ebp


SYMBOL_STACK_INDEX: 3


SYMBOL_NAME: i8042prt!I8042MouseInterruptService+2


FOLLOWUP_NAME: MachineOwner


MODULE_NAME: i8042prt


IMAGE_NAME: i8042prt.sys


DEBUG_FLR_IMAGE_TIMESTAMP: 41107ecc


FAILURE_BUCKET_ID: 0x9C_IA32_AuthenticAMD_i8042prt!I8042MouseInterruptService+2


BUCKET_ID: 0x9C_IA32_AuthenticAMD_i8042prt!I8042MouseInterruptService+2


Followup: MachineOwner

---------

I8042prt.sys jest to port driver myszki i klawiatury, więc coś masz zepsute ze sterownikami od myszki lub klawiatury. Jeśli instalujesz swoje sterowniki od któregoś z tych urządzeń, odinstaluj i zainstaluj ponownie, może problem zniknie. Jeżeli jednak używasz standardowych sterowników z Windowsa XP, to w Menedżer Urządzeń wyłącz klawiaturę i mysz. Restart komputera, może to zadziała.

Zasilacz firmowy, ale sprawdź napięcia.

viewtopic.php?t=9809

Zastosuj inną klawiaturę i mysz dla sprawdzenia kompa - przed podłączeniem nowych urządzeń,odinstaluj oprogramowanie starych urządzeń - zrób czystkę w systemie po oprogramowaniu, wejdź do menadżera urządzeń i odinstaluj/usuń wszystko co dane urządzenie, zamknij kompa, podłącz urządzenie i start i niech system zainstaluje własne stery do tego urządzenia i test kompa i zobacz.

To jest błąd sprzętowy (raczej nieodwracalny). W twoim przypadku może to być magistrala systemowa.

http://support.microsoft.com/kb/329284/pl

System jest czysty, mam nowy dysk od tygodnia (HDD 2) instalowałem tylko niezbędne sterowniki (grafika, chipset) przy podłączonym tylko tym dysku jest ten sam błąd.

Raczej to nie wina klawiatury/myszy przy innych BSOD windbg wskazywał takie sterowniki jak:

nvatabus.sys

ntkrpamp.exe

i8042prt.sys

nvata.sys

AmdK8.sys

PCIIDEX.SYS

Nie mam miernika, ale smartguardian pokazuje mi:

CPU = 1.31V

HT+1.2V = 1.21V

ATX+5.0V = 5.02V

DRAM = 1.88V

ATX+12V = 11,96V - 12.03V

CHIP+1.5V = 1.48V-1.5V

ATX+3.3V = 3.34V

VBAT+3.0V = 3.05V

Już sie pogodziłem z faktem ze to jest błąd sprzętu… chce tylko dojść do tego który komponent jest uszkodzony: płyta główna, procesor, zasilacz, karta graficzna itd., po to żeby ograniczyć koszty/nerwy związane z oddaniem części do serwisu z oczekiwaniem na decyzje, no i co najważniejsze oddanie np płyty głównej czy procesora do serwisu czyni moje narzędzie pracy bezużyteczne.

Sprawdź również:

  • kondensatory na płycie głównej, czy nie wybrzuszone lub wylane.

  • sprawdź temperatury wszystkiego - może coś się przegrzewa.

  • podnieś napięcie zasilania jak masz możliwość na CPU i pamięć.

  • wymień taśmę sygnałową dysku.

Metoda prób i błędów.

Kondensatory wyglądają normalnie żadnych wybrzuszeń itp

Taśmę kupiłem razem z nowym dyskiem tydzień temu, komp chodził tylko na tym nowym dysku i na tej taśmie.

Metoda prób i błędów… od BSOD do BSOD… powoli kończą mi sie pomysły dlatego napisałem tego posta

Masz dosyć wysoką temperaturę chipsetu, jeżeli to jest z biosu, to trochę za dużo. Na tej płycie jest on chłodzony wentylatorem, więc wydaje mi się, że powinna być niższa. Może wentylatorek siada lub źle przylega. Spróbuj z inną pastą. Moim zdaniem jest coś nie tak z płytą główną, a chipset jest tu głównym podejrzanym.

Podkręciłem trochę wentylator z chipsetu (wyje niemiłosiernie lol) po całym dniu pracy 56-57C, trochę dużo, chce dokupić następny wentylator 120x120 i postawić go na spodzie obudowy żeby wiał na grafe i chipset.

Zmień pastę pod nim. W zasadzie chłodzenie na chipset nie jest drogie. Może się zainteresuj zmianą buczka, na jakiś przyzwoity z allegro.