none
My application freezes on Windows 7 32 bit system randomly. RRS feed

  • Question

  • Hello, my application freezes on Windows 7 32 bit system randomly. But it works fine on XP 32 bit systems. I have an old legacy software. It's a desktop client application which exchanges messages with host continuously. It was developed in VC++6.0 long back.

    I know it's a thread synchronization issue. But, why is it happening only on Windows 7 32 bit systems. And there's no issue with XP 32 systems.

    Windbg analysis:

    0:000> !analyze -v
    *******************************************************************************
    *                                                                             *
    *                        Exception Analysis                                   *
    *                                                                             *
    *******************************************************************************

    *** ERROR: Symbol file could not be found.  Defaulted to export symbols for msvcp60.dll - 
    *** WARNING: Unable to verify checksum for WmNtJobMonitor.exe
    *** ERROR: Symbol file could not be found.  Defaulted to export symbols for comctl32.dll - 
    *** ERROR: Symbol file could not be found.  Defaulted to export symbols for user32.dll - 
    *** ERROR: Symbol file could not be found.  Defaulted to export symbols for mfc42u.dll - 
    *** ERROR: Symbol file could not be found.  Defaulted to export symbols for kernel32.dll - 
    ***** OS symbols are WRONG. Please fix symbols to do analysis.

    *************************************************************************
    ***                                                                   ***
    ***                                                                   ***
    ***    Either you specified an unqualified symbol, or your debugger   ***
    ***    doesn't have full symbol information.  Unqualified symbol      ***
    ***    resolution is turned off by default. Please either specify a   ***
    ***    fully qualified symbol module!symbolname, or enable resolution ***
    ***    of unqualified symbols by typing ".symopt- 100". Note that   ***
    ***    enabling unqualified symbol resolution with network symbol     ***
    ***    server shares in the symbol path may cause the debugger to     ***
    ***    appear to hang for long periods of time when an incorrect      ***
    ***    symbol name is typed or the network symbol server is down.     ***
    ***                                                                   ***
    ***    For some commands to work properly, your symbol path           ***
    ***    must point to .pdb files that have full type information.      ***
    ***                                                                   ***
    ***    Certain .pdb files (such as the public OS symbols) do not      ***
    ***    contain the required information.  Contact the group that      ***
    ***    provided you with these symbols if you need this command to    ***
    ***    work.                                                          ***
    ***                                                                   ***
    ***    Type referenced: ntdll!_PEB                                    ***
    ***                                                                   ***
    *************************************************************************
    *************************************************************************
    ***                                                                   ***
    ***                                                                   ***
    ***    Either you specified an unqualified symbol, or your debugger   ***
    ***    doesn't have full symbol information.  Unqualified symbol      ***
    ***    resolution is turned off by default. Please either specify a   ***
    ***    fully qualified symbol module!symbolname, or enable resolution ***
    ***    of unqualified symbols by typing ".symopt- 100". Note that   ***
    ***    enabling unqualified symbol resolution with network symbol     ***
    ***    server shares in the symbol path may cause the debugger to     ***
    ***    appear to hang for long periods of time when an incorrect      ***
    ***    symbol name is typed or the network symbol server is down.     ***
    ***                                                                   ***
    ***    For some commands to work properly, your symbol path           ***
    ***    must point to .pdb files that have full type information.      ***
    ***                                                                   ***
    ***    Certain .pdb files (such as the public OS symbols) do not      ***
    ***    contain the required information.  Contact the group that      ***
    ***    provided you with these symbols if you need this command to    ***
    ***    work.                                                          ***
    ***                                                                   ***
    ***    Type referenced: nt!IMAGE_NT_HEADERS32                         ***
    ***                                                                   ***
    *************************************************************************
    *** ERROR: Symbol file could not be found.  Defaulted to export symbols for ole32.dll - 

    ************* Symbol Loading Error Summary **************
    Module name            Error
    ole32                  PDB not found : c:\palani\mku\wafermark_release_v_3_6_25\liaison300cx_pdb\symbols\dll\ole32.pdb
                           PDB not found : c:\palani\mku\wafermark_release_v_3_6_25\wafermark_pdb\symbols\dll\ole32.pdb

    You can troubleshoot most symbol related issues by turning on symbol loading diagnostics (!sym noisy) and repeating the command that caused symbols to be loaded.
    You should also verify that your symbol search path (.sympath) is correct.
    *** WARNING: Unable to verify checksum for WmNtControlSrvr.dll
    *** ERROR: Symbol file could not be found.  Defaulted to export symbols for msvcrt.dll - 
    *** ERROR: Symbol file could not be found.  Defaulted to export symbols for KERNELBASE.dll - 
    *** WARNING: Unable to verify checksum for frmwk.dll
    *** ERROR: Symbol file could not be found.  Defaulted to export symbols for frmwk.dll - 
    *** WARNING: Unable to verify checksum for L300CxFactory.DLL
    *** ERROR: Symbol file could not be found.  Defaulted to export symbols for msiltcfg.dll - 
    *** WARNING: Unable to verify checksum for L300CxEquipAdapter.DLL
    *** WARNING: Unable to verify checksum for L300CxFactory300.DLL
    *** WARNING: Unable to verify checksum for L300CxEquipAdapter300.DLL
    *** ERROR: Symbol file could not be found.  Defaulted to export symbols for CxHiResTimestamp.dll - 
    *** ERROR: Symbol file could not be found.  Defaulted to export symbols for msvcr90.dll - 
    *** ERROR: Symbol file could not be found.  Defaulted to export symbols for winmm.dll - 
    *** ERROR: Symbol file could not be found.  Defaulted to export symbols for CCAbsLayer.dll - 
    *** ERROR: Symbol file could not be found.  Defaulted to export symbols for CxE39OSS.dll - 
    *** ERROR: Symbol file could not be found.  Defaulted to export symbols for CxE40PJM.dll - 
    GetUrlPageData2 (WinHttp) failed: 12030.

    FAULTING_IP: 
    +0
    00000000 ??              ???

    EXCEPTION_RECORD:  ffffffff -- (.exr 0xffffffffffffffff)
    ExceptionAddress: 00000000
       ExceptionCode: 80000003 (Break instruction exception)
      ExceptionFlags: 00000000
    NumberParameters: 0

    CONTEXT:  00000000 -- (.cxr 0x0;r)
    eax=00000187 ebx=00000000 ecx=01980041 edx=0012f644 esi=61cd1254 edi=00000000
    eip=77c36c04 esp=0012f63c ebp=0012f6a0 iopl=0         nv up ei pl zr na pe nc
    cs=001b  ss=0023  ds=0023  es=0023  fs=003b  gs=0000             efl=00000246
    ntdll!KiFastSystemCallRet:
    77c36c04 c3              ret

    FAULTING_THREAD:  00000f28

    DEFAULT_BUCKET_ID:  WRONG_SYMBOLS

    PROCESS_NAME:  WmNtJobMonitor.exe

    ADDITIONAL_DEBUG_TEXT:  
    You can run '.symfix; .reload' to try to fix the symbol path and load symbols.

    MODULE_NAME: msvcp60

    FAULTING_MODULE: 77bf0000 ntdll

    DEBUG_FLR_IMAGE_TIMESTAMP:  4a5bda6e

    ERROR_CODE: (NTSTATUS) 0x80000003 - {EXCEPTION}  Breakpoint  A breakpoint has been reached.

    EXCEPTION_CODE: (HRESULT) 0x80000003 (2147483651) - One or more arguments are invalid

    APP:  wmntjobmonitor.exe

    ANALYSIS_VERSION: 6.3.9600.17336 (debuggers(dbg).150226-1500) x86fre

    PRIMARY_PROBLEM_CLASS:  WRONG_SYMBOLS

    BUGCHECK_STR:  APPLICATION_FAULT_WRONG_SYMBOLS

    LAST_CONTROL_TRANSFER:  from 77c21c95 to 77c36c04

    STACK_TEXT:  
    WARNING: Stack unwind information not available. Following frames may be wrong.
    0012f6a0 77c21c95 00000000 00000000 00000000 ntdll!KiFastSystemCallRet
    0012f6c8 61c716e1 61cd1254 05404334 0012f6ec ntdll!EtwEventEnabled+0xe0
    0012f6dc 004566a4 05404334 019bbe8c 019bbe8c msvcp60!std::_Lockit::_Lockit+0x21
    0012f6f8 00457eaa 0012f714 0012f75f 0012f74c WmNtJobMonitor!std::_Tree<CUserSecurity::user,CUserSecurity::user,std::set<CUserSecurity::user,CUserSecurity::userComp,std::allocator<CUserSecurity::user> >::_Kfn,CUserSecurity::userComp,std::allocator<CUserSecurity::user> >::_Lbound+0x24
    0012f740 0047059c 0012f978 0012f700 05404331 WmNtJobMonitor!CUserSecurity::FindUser+0x7a
    0012f75c 0047051c 019378f8 019378f8 0046c3b0 WmNtJobMonitor!CWmNtJobMonitorView::UpdateSecsStatus+0x12c
    0012f770 7053ff7b 001b7f2e 0012f79c 75f95562 WmNtJobMonitor!CWmNtJobMonitorView::UpdateSecsStatus+0xac
    0012f77c 75f95562 0063b3c8 0000004e 000004dc comctl32!TrackMouseEvent+0x1a677
    0012f79c 704f84e4 0012f88c 00225ff0 000004dc user32!SendMessageW+0x49
    0012f834 704f8528 00225ff0 fffffff4 00000000 comctl32!ImageList_Destroy+0x7f3
    0012f84c 705475a0 00225ff0 04011630 04011630 comctl32!ImageList_Destroy+0x837
    0012f90c 75f961cf 011b71b6 0012fa28 00228550 comctl32!TrackMouseEvent+0x21c9c
    0012f91c 704fc8b0 0012faf0 00000000 00000014 user32!GetWindowLongW+0x37
    0012f948 75f961c3 00652630 00000000 75f961cf comctl32!ImageList_DrawIndirect+0x80a
    0012f9a8 0046c405 019378f8 00000000 0046c3b0 user32!GetWindowLongW+0x2b
    0012f9f4 75f9c4c7 00030220 00000417 0000000d WmNtJobMonitor!CWmNtJobMonitorView::OnTimer+0x55
    0012fa28 75f961cf 011b72d2 0012fb44 00228550 user32!gapfnScSendMessage+0x1cf
    0012fa38 704fc8b0 0012fc0c 00000000 00000014 user32!GetWindowLongW+0x37
    0012fa54 704f817e 00228550 00228804 0012fc0c comctl32!ImageList_DrawIndirect+0x80a
    0012fac8 75f9c4c7 00030220 00000417 0000000f comctl32!ImageList_Destroy+0x48d
    0012fb04 75f9c621 75f9c5de 011b73e6 00000417 user32!gapfnScSendMessage+0x1cf
    0012fb08 75f9c5de 011b73e6 00000417 704f80bb user32!gapfnScSendMessage+0x329
    0012fb38 6d8db0b8 6d9d00ec 011b73b6 00000000 user32!gapfnScSendMessage+0x2e6
    0012fb50 6d8db051 0012fb44 0012fb94 6d9b1d35 mfc42u!Ordinal6932+0x4f
    0012fb68 6d8decbf 6d8e26c6 6d8dec0f 011b737e mfc42u!Ordinal3025+0x34
    0012fbcc 6d8ecb62 011b7486 002e3018 002e3158 mfc42u!Ordinal1165+0x106
    0012fc18 6d8ebe84 00000000 011b7442 00000000 mfc42u!Ordinal6331+0x109
    0012fc9c 6d8e665f 00000113 00000000 0049c410 mfc42u!Ordinal535+0x83
    0012fcc4 6d8e8882 00000113 00000000 00000000 mfc42u!Ordinal6370+0x2e
    0012fd2c 6d8e87da 019378f8 00000000 00000113 mfc42u!Ordinal1108+0x9d
    0012fd50 6d8e8911 00030334 00000113 00000000 mfc42u!Ordinal1571+0x40
    0012fd84 75f9c4c7 00030334 00000113 00000000 mfc42u!Ordinal1572+0x57
    0012fdb0 75f9c5c7 6d8e88ba 00030334 00000113 user32!gapfnScSendMessage+0x1cf
    0012fe28 75f9cc00 00000000 6d8e88ba 00030334 user32!gapfnScSendMessage+0x2cf
    0012fe8c 75f9cc58 6d8e88ba 00000000 0012fec4 user32!gapfnScSendMessage+0x908
    0012fe9c 6d8ec48f 004bdedc 00000002 004bdea8 user32!DispatchMessageW+0xf
    0012fec4 6d8ef8c5 00000002 001d1ecc 00000000 mfc42u!Ordinal5303+0x43
    0012fed8 00483c6b 00400000 00000000 001d1ecc mfc42u!Ordinal1569+0x60
    0012feec 00482ab5 00400000 00000000 001d1ecc WmNtJobMonitor!wWinMain+0x15
    0012ff88 76c8ef6c 7ffd9000 0012ffd4 77c53618 WmNtJobMonitor!wWinMainCRTStartup+0x15b
    0012ff94 77c53618 7ffd9000 733206ae 00000000 kernel32!BaseThreadInitThunk+0x12
    0012ffd4 77c535eb 0048295a 7ffd9000 00000000 ntdll!RtlInitializeExceptionChain+0xef
    0012ffec 00000000 0048295a 7ffd9000 00000000 ntdll!RtlInitializeExceptionChain+0xc2


    STACK_COMMAND:  ~0s; .ecxr ; kb

    FOLLOWUP_IP: 
    msvcp60!std::_Lockit::_Lockit+21
    61c716e1 8b45fc          mov     eax,dword ptr [ebp-4]

    SYMBOL_STACK_INDEX:  2

    SYMBOL_NAME:  msvcp60!std::_Lockit::_Lockit+21

    FOLLOWUP_NAME:  MachineOwner

    IMAGE_NAME:  msvcp60.dll

    BUCKET_ID:  WRONG_SYMBOLS

    FAILURE_BUCKET_ID:  WRONG_SYMBOLS_80000003_msvcp60.dll!std::_Lockit::_Lockit

    ANALYSIS_SOURCE:  UM

    FAILURE_ID_HASH_STRING:  um:wrong_symbols_80000003_msvcp60.dll!std::_lockit::_lockit

    FAILURE_ID_HASH:  {8538006b-a2cf-d971-8b92-06c8a546e1bd}

    Followup: MachineOwner
    Thursday, January 23, 2020 10:00 PM

All replies

  • Best bet,open control-panel/Administrator Tools/Event viewer/System/expand the tree/open each/properties/locate the date-time of the event,properties,see what the OS says...
    Sunday, February 16, 2020 4:08 AM