From: sjatnieks on
Hello all,

I really hope someone can help me to shed some light on a production
issue we've been having. Approximately 1-2 times a day on our
production site, IIS will crash on one of our web servers with no
errors written to the event log. We finally put the IIS DebugDiag tool
onto one of the servers and got a crash dump to analyze.

Now, I really don't have a clue what I'm doing with this, but I've
managed to gleen a bit of information by using both DebugDiag and
WinDbg.

Can anyone tell me what might be going on here?

First, from an analysis using DebugDiag:

Type of Analysis Performed Crash Analysis
Machine Name PROD6
Operating System Windows Server 2003 Service Pack 1
Number Of Processors 2
Process ID 2404
Process Image c:\WINDOWS\system32\inetsrv\w3wp.exe
System Up-Time 22 day(s) 21:13:57
Process Up-Time 2 day(s) 07:37:47


Thread 7 - System ID 3228
Entry point mscorsvr!ThreadpoolMgr::intermediateThreadProc
Create time 6/1/2006 10:19:37 AM
Time spent in user mode 0 Days 0:0:17.46
Time spent in kernel mode 0 Days 0:0:2.265

MSCORSVR!WSZGETENVIRONMENTVARIABLE+15In
w3wp__PID__2404__Date__06_01_2006__Time_08_40_27AM__674__Second_Chance_Exception_C0000005.dmp
the assembly instruction at mscorsvr!WszGetEnvironmentVariable+15 in
C:\WINDOWS\Microsoft.NET\Framework\v1.1.4322\mscorsvr.dll from
Microsoft Corporation has caused an access violation exception
(0xC0000005) when trying to write to memory location 0x22690df8 on
thread 7

Then, using WinDbg:

0:007> !analyze -v
Loading symbols for 7c800000 ntdll.dll -> ntdll.dll
*******************************************************************************
*
*
* Exception Analysis
*
*
*
*******************************************************************************

Loading symbols for 77e40000 kernel32.dll -> kernel32.dll
Loading symbols for 5a300000 w3tp.dll -> w3tp.dll
Force unload of C:\WINDOWS\system32\ole32.dll
Loading symbols for 77670000 ole32.dll -> ole32.dll
Thu Jun 1 16:05:00.078 2006 (GMT-5): ModLoad: 77670000 777a4000
C:\WINDOWS\system32\ole32.dll
Loading symbols for 71b20000 mswsock.dll -> mswsock.dll
Loading symbols for 71c00000 ws2_32.dll -> ws2_32.dll
Loading symbols for 7c340000 msvcr71.dll -> msvcr71.dll
Loading symbols for 79990000 mscorlib.dll -> mscorlib.dll
*** WARNING: Unable to verify checksum for mscorlib.dll
*** ERROR: Module load completed but symbols could not be loaded for
mscorlib.dll

FAULTING_IP:
mscorsvr!WszGetEnvironmentVariable+15
791e21d0 56 push esi

EXCEPTION_RECORD: ffffffff -- (.exr ffffffffffffffff)
ExceptionAddress: 791e21d0
(mscorsvr!WszGetEnvironmentVariable+0x00000015)
ExceptionCode: c0000005 (Access violation)
ExceptionFlags: 00000000
NumberParameters: 2
Parameter[0]: 00000001
Parameter[1]: 22690df8
Attempt to write to address 22690df8

DEFAULT_BUCKET_ID: APPLICATION_FAULT

PROCESS_NAME: w3wp.exe

ERROR_CODE: (NTSTATUS) 0xc0000005 - The instruction at "0x%08lx"
referenced memory at "0x%08lx". The memory could not be "%s".

WRITE_ADDRESS: 22690df8

BUGCHECK_STR: ACCESS_VIOLATION

EXCEPTION_DOESNOT_MATCH_CODE: This indicates a hardware error.
Instruction at 791e21d0 does not read/write to 22690df8

LAST_CONTROL_TRANSFER: from 226911f8 to 791e21d0

STACK_TEXT:
22691014 226911f8 793cfcc4 ffffffff 226910c4
mscorsvr!WszGetEnvironmentVariable+0x15
WARNING: Frame IP not in any known module. Following frames may be
wrong.
22691024 791e2283 22691040 00000000 00000000 0x226911f8
226910c4 791e22d6 00000001 0010a808 0010a808
mscorsvr!REGUTIL::SetLong+0xca
226910ec 7924edd5 7924edd8 00000000 ffffffff
mscorsvr!REGUTIL::GetConfigDWORD+0x24
22691100 7924ee25 00000000 22691154 22691124
mscorsvr!Debugger::GetDbgJITDebugLaunchSetting+0x10
22691110 793a3329 00000000 00000001 01991eb0
mscorsvr!Debugger::ShouldAttachDebugger+0x1f
22691124 793af0b2 22691154 0010a808 0003f000
mscorsvr!ShouldAttachDebuggerStub+0x17
22691140 79290578 793a3312 22691154 226912c4
mscorsvr!DebuggerRCThread::DoFavor+0x88
22691164 7924ec19 00000000 00000001 00000000
mscorsvr!Debugger::ShouldAttachDebuggerProxy+0x41
22691180 792ba69e 226912c4 226912d8 00000001
mscorsvr!Debugger::LastChanceManagedException+0x87
226911a4 792ba8b8 0f3d4ea8 00000010 226912c4 mscorsvr!FailFast+0xb0
226911b8 7c34246e 226911e0 00000000 226911e0
mscorsvr!ComPlusCoopFrameSEH+0x7e
226911e0 7c82eeb2 226912c4 22691634 226912d8
msvcr71!_except_handler3+0x61
22691204 7c82ee84 226912c4 22691634 226912d8 ntdll!ExecuteHandler2+0x26
226912ac 7c82ecc6 22691000 226912d8 226912c4 ntdll!ExecuteHandler+0x24
226912ac 77e55dea 22691000 226912d8 226912c4
ntdll!KiUserExceptionDispatcher+0xe
226915f8 792ba88e e0434f4d 00000001 00000000
kernel32!RaiseException+0x53
22691644 792ba929 00000040 019d11ec 792666c4
mscorsvr!ComPlusCoopFrameSEH+0x54
22691650 792666c4 00000000 00000000 226920a0
mscorsvr!FatalInternalError+0xd
22691674 79214e23 2269178c 226920a0 226917a8
mscorsvr!GetPrevSEHRecord+0x6b4
2269168c 7924daf6 2269178c 226920a0 226917a8
mscorsvr!COMPlusFrameHandler+0x3d
226916a8 7c82eeb2 2269178c 226920a0 226917a8
mscorsvr!COMPlusNestedExceptionHandler+0x57
226916cc 7c82ee84 2269178c 226920a0 226917a8 ntdll!ExecuteHandler2+0x26
22691774 7c82ecc6 22691000 226917a8 2269178c ntdll!ExecuteHandler+0x24
22691774 7924c8b2 22691000 226917a8 2269178c
ntdll!KiUserExceptionDispatcher+0xe
22691ad0 0d055158 22691c14 22691c14 00133008 mscorsvr!JIT_Throw+0x2a
226cebcc 799a67a2 02569514 02569818 799b4168 0xd055158
226cebd8 799b4168 00000002 00000000 01dc20a0 mscorlib_79990000+0x167a2
226cec60 79217188 00000000 00d6d4c0 020a6490 mscorlib_79990000+0x24168
01ce31a8 24548bca 2415ff10 8b01a595 8bcb8bd8
mscorsvr!ComCallMLStubCache::CompileMLStub+0x429
01ce31b4 8bcb8bd8 9890ff01 8b000000 0646b9f8 0x24548bca
01ce31b8 9890ff01 8b000000 0646b9f8 01e80000 0x8bcb8bd8
01ce31bc 8b000000 0646b9f8 01e80000 8bffd3f1 0x9890ff01
01ce31c0 0646b9f8 01e80000 8bffd3f1 8b008b00 0x8b000000
01ce31c4 01e80000 8bffd3f1 8b008b00 f6854070 0x646b9f8
0646b9f8 00300069 00350034 0020003b 00490053 0x1e80000
0646b9fc 00350034 0020003b 00490053 003d0044 0x300069
0646ba00 0020003b 00490053 003d0044 00650030 0x350034
0646ba04 00490053 003d0044 00650030 00630039 0x20003b
0646ba08 003d0044 00650030 00630039 00310035 0x490053
0646ba0c 00650030 00630039 00310035 00630062 0x3d0044
0646ba10 00630039 00310035 00630062 0035002d 0x650030
0646ba14 00310035 00630062 0035002d 00660066 0x630039
0646ba18 00630062 0035002d 00660066 002d0032 0x310035
0646ba1c 0035002d 00660066 002d0032 00340034 0x630062
0646ba20 00660066 002d0032 00340034 00640066 0x35002d
0646ba24 002d0032 00340034 00640066 0061002d 0x660066
0646ba28 00340034 00640066 0061002d 00310063 0x2d0032
0646ba2c 00640066 0061002d 00310063 002d0036 0x340034
0646ba30 0061002d 00310063 002d0036 00620065 0x640066
0646ba34 00310063 002d0036 00620065 00380031 0x61002d
0646ba38 002d0036 00620065 00380031 00610062 0x310063
0646ba3c 00620065 00380031 00610062 00350038 0x2d0036
0646ba40 00380031 00610062 00350038 00320034 0x620065
0646ba44 00610062 00350038 00320034 00630032 0x380031
0646ba48 00350038 00320034 00630032 0020003b 0x610062
0646ba4c 00320034 00630032 0020003b 00730055 0x350038
0646ba50 00630032 0020003b 00730055 00720065 0x320034
0646ba54 0020003b 00730055 00720065 00440049 0x630032
0646ba58 00730055 00720065 00440049 006e003d 0x20003b
0646ba5c 00720065 00440049 006e003d 00690067 0x730055
0646ba60 00440049 006e003d 00690067 006d0072 0x720065
0646ba64 006e003d 00690067 006d0072 00400061 0x440049
0646ba68 00690067 006d0072 00400061 006f006d 0x6e003d
0646ba6c 006d0072 00400061 006f006d 00670072 0x690067
0646ba70 00400061 006f006d 00670072 006e0061 0x6d0072
0646ba74 006f006d 00670072 006e0061 0065006c 0x400061
0646ba78 00670072 006e0061 0065006c 00690077 0x6f006d
0646ba7c 006e0061 0065006c 00690077 002e0073 0x670072
0646ba80 0065006c 00690077 002e0073 006f0063 0x6e0061
0646ba84 00690077 002e0073 006f0063 003b006d 0x65006c
0646ba88 002e0073 006f0063 003b006d 00440020 0x690077
0646ba8c 006f0063 003b006d 00440020 00490053 0x2e0073
0646ba90 003b006d 00440020 00490053 003d0044 0x6f0063
0646ba94 00440020 00490053 003d0044 00480055 0x3b006d


STACK_COMMAND: ~7s; .ecxr ; kb

SYMBOL_NAME: CODE_ADDRESS_MISMATCH

FOLLOWUP_NAME: MachineOwner

MODULE_NAME: hardware

IMAGE_NAME: hardware

DEBUG_FLR_IMAGE_TIMESTAMP: 0

FAILURE_BUCKET_ID: ACCESS_VIOLATION_CODE_ADDRESS_MISMATCH

BUCKET_ID: ACCESS_VIOLATION_CODE_ADDRESS_MISMATCH

Followup: MachineOwner
---------


Finally, using some information from another posting I saw, I tried a
few more commands:

0:000> ~7s
eax=0f6e5256 ebx=00000000 ecx=7924edd8 edx=22691082 esi=7924edd8
edi=00000000
eip=791e21d0 esp=22690dfc ebp=22691024 iopl=0 nv up ei pl nz ac
po nc
cs=001b ss=0023 ds=0023 es=0023 fs=003b gs=0000
efl=00010216
mscorsvr!WszGetEnvironmentVariable+0x15:
791e21d0 56 push esi
0:007> !.\clr10\sos.ClrStack
Loaded .\clr10\sos extension DLL
Loaded Son of Strike data table version 5 from
"C:\WINDOWS\Microsoft.NET\Framework\v1.1.4322\mscorsvr.dll"
Thread 7
ESP EIP
0x22691aac 0x791e21d0 [FRAME: HelperMethodFrame]
0x22691ad8 0x0d055158 [DEFAULT] [hasThis] Void
Global.TTrackerApplication.Application_PreRequestHandlerExecute(Object,Class
System.EventArgs)
at [+0x4a0] [+0x220]
0x226ceb54 0x0c6ca075 [DEFAULT] [hasThis] Void
System.Web.HttpApplication/SyncEventExecutionStep.System.Web.HttpApplication+IExecutionStep.Execute()
0x226ceb64 0x0c6c9cf8 [DEFAULT] [hasThis] Class System.Exception
System.Web.HttpApplication.ExecuteStep(Class IExecutionStep,ByRef
Boolean)
0x226cebac 0x0c6c95ca [DEFAULT] [hasThis] Void
System.Web.HttpApplication.ResumeSteps(Class System.Exception)
0x226cebf4 0x0c6c9493 [DEFAULT] [hasThis] Class System.IAsyncResult
System.Web.HttpApplication.System.Web.IHttpAsyncHandler.BeginProcessRequest(Class
System.Web.HttpContext,Class System.AsyncCallback,Object)
0x226cec10 0x01ce6adf [DEFAULT] [hasThis] Void
System.Web.HttpRuntime.ProcessRequestInternal(Class
System.Web.HttpWorkerRequest)
0x226cec4c 0x01ce6690 [DEFAULT] Void
System.Web.HttpRuntime.ProcessRequest(Class
System.Web.HttpWorkerRequest)
0x226cec58 0x01ce320d [DEFAULT] [hasThis] I4
System.Web.Hosting.ISAPIRuntime.ProcessRequest(I,I4)
0x226ced20 0x79217188 [FRAME: ContextTransitionFrame]
0x226cee00 0x79217188 [FRAME: ComMethodFrame]


I greatly appreciate any help anyone may have to offer!

Steve

From: Pat [MSFT] on
The most likely culprit is:

Global.TTrackerApplication.Application_PreRequestHandlerExecute

Pat

<sjatnieks(a)gmail.com> wrote in message
news:1149196814.626086.84130(a)f6g2000cwb.googlegroups.com...
> Hello all,
>
> I really hope someone can help me to shed some light on a production
> issue we've been having. Approximately 1-2 times a day on our
> production site, IIS will crash on one of our web servers with no
> errors written to the event log. We finally put the IIS DebugDiag tool
> onto one of the servers and got a crash dump to analyze.
>
> Now, I really don't have a clue what I'm doing with this, but I've
> managed to gleen a bit of information by using both DebugDiag and
> WinDbg.
>
> Can anyone tell me what might be going on here?
>
> First, from an analysis using DebugDiag:
>
> Type of Analysis Performed Crash Analysis
> Machine Name PROD6
> Operating System Windows Server 2003 Service Pack 1
> Number Of Processors 2
> Process ID 2404
> Process Image c:\WINDOWS\system32\inetsrv\w3wp.exe
> System Up-Time 22 day(s) 21:13:57
> Process Up-Time 2 day(s) 07:37:47
>
>
> Thread 7 - System ID 3228
> Entry point mscorsvr!ThreadpoolMgr::intermediateThreadProc
> Create time 6/1/2006 10:19:37 AM
> Time spent in user mode 0 Days 0:0:17.46
> Time spent in kernel mode 0 Days 0:0:2.265
>
> MSCORSVR!WSZGETENVIRONMENTVARIABLE+15In
> w3wp__PID__2404__Date__06_01_2006__Time_08_40_27AM__674__Second_Chance_Exception_C0000005.dmp
> the assembly instruction at mscorsvr!WszGetEnvironmentVariable+15 in
> C:\WINDOWS\Microsoft.NET\Framework\v1.1.4322\mscorsvr.dll from
> Microsoft Corporation has caused an access violation exception
> (0xC0000005) when trying to write to memory location 0x22690df8 on
> thread 7
>
> Then, using WinDbg:
>
> 0:007> !analyze -v
> Loading symbols for 7c800000 ntdll.dll -> ntdll.dll
> *******************************************************************************
> *
> *
> * Exception Analysis
> *
> *
> *
> *******************************************************************************
>
> Loading symbols for 77e40000 kernel32.dll -> kernel32.dll
> Loading symbols for 5a300000 w3tp.dll -> w3tp.dll
> Force unload of C:\WINDOWS\system32\ole32.dll
> Loading symbols for 77670000 ole32.dll -> ole32.dll
> Thu Jun 1 16:05:00.078 2006 (GMT-5): ModLoad: 77670000 777a4000
> C:\WINDOWS\system32\ole32.dll
> Loading symbols for 71b20000 mswsock.dll -> mswsock.dll
> Loading symbols for 71c00000 ws2_32.dll -> ws2_32.dll
> Loading symbols for 7c340000 msvcr71.dll -> msvcr71.dll
> Loading symbols for 79990000 mscorlib.dll -> mscorlib.dll
> *** WARNING: Unable to verify checksum for mscorlib.dll
> *** ERROR: Module load completed but symbols could not be loaded for
> mscorlib.dll
>
> FAULTING_IP:
> mscorsvr!WszGetEnvironmentVariable+15
> 791e21d0 56 push esi
>
> EXCEPTION_RECORD: ffffffff -- (.exr ffffffffffffffff)
> ExceptionAddress: 791e21d0
> (mscorsvr!WszGetEnvironmentVariable+0x00000015)
> ExceptionCode: c0000005 (Access violation)
> ExceptionFlags: 00000000
> NumberParameters: 2
> Parameter[0]: 00000001
> Parameter[1]: 22690df8
> Attempt to write to address 22690df8
>
> DEFAULT_BUCKET_ID: APPLICATION_FAULT
>
> PROCESS_NAME: w3wp.exe
>
> ERROR_CODE: (NTSTATUS) 0xc0000005 - The instruction at "0x%08lx"
> referenced memory at "0x%08lx". The memory could not be "%s".
>
> WRITE_ADDRESS: 22690df8
>
> BUGCHECK_STR: ACCESS_VIOLATION
>
> EXCEPTION_DOESNOT_MATCH_CODE: This indicates a hardware error.
> Instruction at 791e21d0 does not read/write to 22690df8
>
> LAST_CONTROL_TRANSFER: from 226911f8 to 791e21d0
>
> STACK_TEXT:
> 22691014 226911f8 793cfcc4 ffffffff 226910c4
> mscorsvr!WszGetEnvironmentVariable+0x15
> WARNING: Frame IP not in any known module. Following frames may be
> wrong.
> 22691024 791e2283 22691040 00000000 00000000 0x226911f8
> 226910c4 791e22d6 00000001 0010a808 0010a808
> mscorsvr!REGUTIL::SetLong+0xca
> 226910ec 7924edd5 7924edd8 00000000 ffffffff
> mscorsvr!REGUTIL::GetConfigDWORD+0x24
> 22691100 7924ee25 00000000 22691154 22691124
> mscorsvr!Debugger::GetDbgJITDebugLaunchSetting+0x10
> 22691110 793a3329 00000000 00000001 01991eb0
> mscorsvr!Debugger::ShouldAttachDebugger+0x1f
> 22691124 793af0b2 22691154 0010a808 0003f000
> mscorsvr!ShouldAttachDebuggerStub+0x17
> 22691140 79290578 793a3312 22691154 226912c4
> mscorsvr!DebuggerRCThread::DoFavor+0x88
> 22691164 7924ec19 00000000 00000001 00000000
> mscorsvr!Debugger::ShouldAttachDebuggerProxy+0x41
> 22691180 792ba69e 226912c4 226912d8 00000001
> mscorsvr!Debugger::LastChanceManagedException+0x87
> 226911a4 792ba8b8 0f3d4ea8 00000010 226912c4 mscorsvr!FailFast+0xb0
> 226911b8 7c34246e 226911e0 00000000 226911e0
> mscorsvr!ComPlusCoopFrameSEH+0x7e
> 226911e0 7c82eeb2 226912c4 22691634 226912d8
> msvcr71!_except_handler3+0x61
> 22691204 7c82ee84 226912c4 22691634 226912d8 ntdll!ExecuteHandler2+0x26
> 226912ac 7c82ecc6 22691000 226912d8 226912c4 ntdll!ExecuteHandler+0x24
> 226912ac 77e55dea 22691000 226912d8 226912c4
> ntdll!KiUserExceptionDispatcher+0xe
> 226915f8 792ba88e e0434f4d 00000001 00000000
> kernel32!RaiseException+0x53
> 22691644 792ba929 00000040 019d11ec 792666c4
> mscorsvr!ComPlusCoopFrameSEH+0x54
> 22691650 792666c4 00000000 00000000 226920a0
> mscorsvr!FatalInternalError+0xd
> 22691674 79214e23 2269178c 226920a0 226917a8
> mscorsvr!GetPrevSEHRecord+0x6b4
> 2269168c 7924daf6 2269178c 226920a0 226917a8
> mscorsvr!COMPlusFrameHandler+0x3d
> 226916a8 7c82eeb2 2269178c 226920a0 226917a8
> mscorsvr!COMPlusNestedExceptionHandler+0x57
> 226916cc 7c82ee84 2269178c 226920a0 226917a8 ntdll!ExecuteHandler2+0x26
> 22691774 7c82ecc6 22691000 226917a8 2269178c ntdll!ExecuteHandler+0x24
> 22691774 7924c8b2 22691000 226917a8 2269178c
> ntdll!KiUserExceptionDispatcher+0xe
> 22691ad0 0d055158 22691c14 22691c14 00133008 mscorsvr!JIT_Throw+0x2a
> 226cebcc 799a67a2 02569514 02569818 799b4168 0xd055158
> 226cebd8 799b4168 00000002 00000000 01dc20a0 mscorlib_79990000+0x167a2
> 226cec60 79217188 00000000 00d6d4c0 020a6490 mscorlib_79990000+0x24168
> 01ce31a8 24548bca 2415ff10 8b01a595 8bcb8bd8
> mscorsvr!ComCallMLStubCache::CompileMLStub+0x429
> 01ce31b4 8bcb8bd8 9890ff01 8b000000 0646b9f8 0x24548bca
> 01ce31b8 9890ff01 8b000000 0646b9f8 01e80000 0x8bcb8bd8
> 01ce31bc 8b000000 0646b9f8 01e80000 8bffd3f1 0x9890ff01
> 01ce31c0 0646b9f8 01e80000 8bffd3f1 8b008b00 0x8b000000
> 01ce31c4 01e80000 8bffd3f1 8b008b00 f6854070 0x646b9f8
> 0646b9f8 00300069 00350034 0020003b 00490053 0x1e80000
> 0646b9fc 00350034 0020003b 00490053 003d0044 0x300069
> 0646ba00 0020003b 00490053 003d0044 00650030 0x350034
> 0646ba04 00490053 003d0044 00650030 00630039 0x20003b
> 0646ba08 003d0044 00650030 00630039 00310035 0x490053
> 0646ba0c 00650030 00630039 00310035 00630062 0x3d0044
> 0646ba10 00630039 00310035 00630062 0035002d 0x650030
> 0646ba14 00310035 00630062 0035002d 00660066 0x630039
> 0646ba18 00630062 0035002d 00660066 002d0032 0x310035
> 0646ba1c 0035002d 00660066 002d0032 00340034 0x630062
> 0646ba20 00660066 002d0032 00340034 00640066 0x35002d
> 0646ba24 002d0032 00340034 00640066 0061002d 0x660066
> 0646ba28 00340034 00640066 0061002d 00310063 0x2d0032
> 0646ba2c 00640066 0061002d 00310063 002d0036 0x340034
> 0646ba30 0061002d 00310063 002d0036 00620065 0x640066
> 0646ba34 00310063 002d0036 00620065 00380031 0x61002d
> 0646ba38 002d0036 00620065 00380031 00610062 0x310063
> 0646ba3c 00620065 00380031 00610062 00350038 0x2d0036
> 0646ba40 00380031 00610062 00350038 00320034 0x620065
> 0646ba44 00610062 00350038 00320034 00630032 0x380031
> 0646ba48 00350038 00320034 00630032 0020003b 0x610062
> 0646ba4c 00320034 00630032 0020003b 00730055 0x350038
> 0646ba50 00630032 0020003b 00730055 00720065 0x320034
> 0646ba54 0020003b 00730055 00720065 00440049 0x630032
> 0646ba58 00730055 00720065 00440049 006e003d 0x20003b
> 0646ba5c 00720065 00440049 006e003d 00690067 0x730055
> 0646ba60 00440049 006e003d 00690067 006d0072 0x720065
> 0646ba64 006e003d 00690067 006d0072 00400061 0x440049
> 0646ba68 00690067 006d0072 00400061 006f006d 0x6e003d
> 0646ba6c 006d0072 00400061 006f006d 00670072 0x690067
> 0646ba70 00400061 006f006d 00670072 006e0061 0x6d0072
> 0646ba74 006f006d 00670072 006e0061 0065006c 0x400061
> 0646ba78 00670072 006e0061 0065006c 00690077 0x6f006d
> 0646ba7c 006e0061 0065006c 00690077 002e0073 0x670072
> 0646ba80 0065006c 00690077 002e0073 006f0063 0x6e0061
> 0646ba84 00690077 002e0073 006f0063 003b006d 0x65006c
> 0646ba88 002e0073 006f0063 003b006d 00440020 0x690077
> 0646ba8c 006f0063 003b006d 00440020 00490053 0x2e0073
> 0646ba90 003b006d 00440020 00490053 003d0044 0x6f0063
> 0646ba94 00440020 00490053 003d0044 00480055 0x3b006d
>
>
> STACK_COMMAND: ~7s; .ecxr ; kb
>
> SYMBOL_NAME: CODE_ADDRESS_MISMATCH
>
> FOLLOWUP_NAME: MachineOwner
>
> MODULE_NAME: hardware
>
> IMAGE_NAME: hardware
>
> DEBUG_FLR_IMAGE_TIMESTAMP: 0
>
> FAILURE_BUCKET_ID: ACCESS_VIOLATION_CODE_ADDRESS_MISMATCH
>
> BUCKET_ID: ACCESS_VIOLATION_CODE_ADDRESS_MISMATCH
>
> Followup: MachineOwner
> ---------
>
>
> Finally, using some information from another posting I saw, I tried a
> few more commands:
>
> 0:000> ~7s
> eax=0f6e5256 ebx=00000000 ecx=7924edd8 edx=22691082 esi=7924edd8
> edi=00000000
> eip=791e21d0 esp=22690dfc ebp=22691024 iopl=0 nv up ei pl nz ac
> po nc
> cs=001b ss=0023 ds=0023 es=0023 fs=003b gs=0000
> efl=00010216
> mscorsvr!WszGetEnvironmentVariable+0x15:
> 791e21d0 56 push esi
> 0:007> !.\clr10\sos.ClrStack
> Loaded .\clr10\sos extension DLL
> Loaded Son of Strike data table version 5 from
> "C:\WINDOWS\Microsoft.NET\Framework\v1.1.4322\mscorsvr.dll"
> Thread 7
> ESP EIP
> 0x22691aac 0x791e21d0 [FRAME: HelperMethodFrame]
> 0x22691ad8 0x0d055158 [DEFAULT] [hasThis] Void
> Global.TTrackerApplication.Application_PreRequestHandlerExecute(Object,Class
> System.EventArgs)
> at [+0x4a0] [+0x220]
> 0x226ceb54 0x0c6ca075 [DEFAULT] [hasThis] Void
> System.Web.HttpApplication/SyncEventExecutionStep.System.Web.HttpApplication+IExecutionStep.Execute()
> 0x226ceb64 0x0c6c9cf8 [DEFAULT] [hasThis] Class System.Exception
> System.Web.HttpApplication.ExecuteStep(Class IExecutionStep,ByRef
> Boolean)
> 0x226cebac 0x0c6c95ca [DEFAULT] [hasThis] Void
> System.Web.HttpApplication.ResumeSteps(Class System.Exception)
> 0x226cebf4 0x0c6c9493 [DEFAULT] [hasThis] Class System.IAsyncResult
> System.Web.HttpApplication.System.Web.IHttpAsyncHandler.BeginProcessRequest(Class
> System.Web.HttpContext,Class System.AsyncCallback,Object)
> 0x226cec10 0x01ce6adf [DEFAULT] [hasThis] Void
> System.Web.HttpRuntime.ProcessRequestInternal(Class
> System.Web.HttpWorkerRequest)
> 0x226cec4c 0x01ce6690 [DEFAULT] Void
> System.Web.HttpRuntime.ProcessRequest(Class
> System.Web.HttpWorkerRequest)
> 0x226cec58 0x01ce320d [DEFAULT] [hasThis] I4
> System.Web.Hosting.ISAPIRuntime.ProcessRequest(I,I4)
> 0x226ced20 0x79217188 [FRAME: ContextTransitionFrame]
> 0x226cee00 0x79217188 [FRAME: ComMethodFrame]
>
>
> I greatly appreciate any help anyone may have to offer!
>
> Steve
>

From: sjatnieks on
Hi Pat,

First of all, thanks for the response. I saw many of your replies in
the groups while I was researching this problem, so I was hoping you
might respond. It was one of your posts that led me to try those last
2 commands in WinDbg (I still have no clue what that last command even
means).

Do you have any advice on how I can get any more debug information out
of the dump file, or to set something up to get more information like a
stack trace from the application when it crashes? Unfortunately, this
method is just the main entry point into our application, so even
knowing the error is happening there is not much help. Although, if
the error was happening in a method that was called by that method,
would that method name also be included in the crash dump? In other
words, if only that method name is included, does it mean that the
error is local to that method?

Our hypothesis is that multiple users are hitting the entry point of
the application at the same time and the initialization code is failing
because something is not thread safe.

Any other advice you may have would be greatly appreciated.

Thanks,

Steve

Pat [MSFT] wrote:
> The most likely culprit is:
>
> Global.TTrackerApplication.Application_PreRequestHandlerExecute
>
> Pat
>
> <sjatnieks(a)gmail.com> wrote in message

From: Pat [MSFT] on
To pull info from the dump file, open it with WinDBG and use the SOS debug
extension:
1) Switch to the crashing thread (~<threadnum>s <enter>)
2) Dump the managed stack (!.\clr10\sos.ClrStack <enter>)

You will get more or less the same thing that was in the log you posted,
though it may be easier to read.

The method at the top of the stack is the method where the crash occurred.
It may not be a "bug" per se, but it could mean that there is a common code
path where the app makes some assumptions and that when those assumptions
are not true (e.g. maybe a cookie field is not populated) a crash occurred.
You could beef up the code that is running to include additional checks on
the data - I strongly favor this over Try/Catch blocks b/c an 'if' statement
is 100's of times more performant than a catch block (try failure into a
catch block involves a kernel transition and back vs an if() statement which
is basically a few lines of assembly).

You can also use the System.Diagnostics methods in your app to dump
interesting info to the event log (like a managed stack, local variables,
etc.).


Pat



<sjatnieks(a)gmail.com> wrote in message
news:1149220565.112957.250150(a)f6g2000cwb.googlegroups.com...
> Hi Pat,
>
> First of all, thanks for the response. I saw many of your replies in
> the groups while I was researching this problem, so I was hoping you
> might respond. It was one of your posts that led me to try those last
> 2 commands in WinDbg (I still have no clue what that last command even
> means).
>
> Do you have any advice on how I can get any more debug information out
> of the dump file, or to set something up to get more information like a
> stack trace from the application when it crashes? Unfortunately, this
> method is just the main entry point into our application, so even
> knowing the error is happening there is not much help. Although, if
> the error was happening in a method that was called by that method,
> would that method name also be included in the crash dump? In other
> words, if only that method name is included, does it mean that the
> error is local to that method?
>
> Our hypothesis is that multiple users are hitting the entry point of
> the application at the same time and the initialization code is failing
> because something is not thread safe.
>
> Any other advice you may have would be greatly appreciated.
>
> Thanks,
>
> Steve
>
> Pat [MSFT] wrote:
>> The most likely culprit is:
>>
>> Global.TTrackerApplication.Application_PreRequestHandlerExecute
>>
>> Pat
>>
>> <sjatnieks(a)gmail.com> wrote in message
>