Troubleshooting eComStation - A Guide to the Troubled

Presented at

Warpstock 2009, August 7-9, 2009
by
Steven H. Levine



eComStation is reliable and most of the time, it just runs day after day with little or no attention. However, as with any complex system, some systems will have issues. eComStation supports a large number of tools that can prove extremely helpful tracking down to source of an issue and often can assist in resolve the issue.


Exception Reporting

No one likes exceptions, but they do happen. The kernel defines two types of exception reports Some applications define private exception handlers which replace the default Process Exception report with an application specific report. Examples of application specific exception reports include
Exceptions do not need to be fatal. The application can attempt to recover from the exception and continue processing.

Process Exception Reports

The format of a process (i.e. ring3) exception report is
01-> 02-25-1999  10:58:35  SYS3175  PID 00b2  TID 0001  Slot 0068
02-> E:\CLASSES\LABS\LAB26\BEDBUG.EXE
03-> c0000005
04-> 1bf94e24
05-> P1=00000001  P2=00000000  P3=XXXXXXXX  P4=XXXXXXXX
06-> EAX=00000000  EBX=00060210  ECX=0002881c  EDX=00060210
07-> ESI=00000001  EDI=00000002
08-> DS=0053  DSACC=d0f3  DSLIM=1fffffff
09-> ES=0053  ESACC=d0f3  ESLIM=1fffffff
10-> FS=150b  FSACC=00f3  FSLIM=00000030
11-> GS=0000  GSACC=****  GSLIM=********
12-> CS:EIP=005b:1bf94e24  CSACC=d0df  CSLIM=1fffffff
13-> SS:ESP=0053:000287ec  SSACC=d0f3  SSLIM=1fffffff
14-> EBP=000287f8  FLG=00012206

15-> DOSCALL1.DLL 0002:00004e24

Kernel IPE Exception Reports

The format of a Kernel IPE (i.e. ring0) exception report will be
1-> <IPE specific Message>

2->  THE SYSTEM DETECTED AN INTERNAL PROCESSING
     ERROR AT LOCATION ##xxxx:yyyyyyyy - aaaa:bbbb

3->  lllll , ffff
4->  038600d1
5-> INTERNAL REVISION 6 . 307  DATE: 92/03/01
or
1->  TRAP 0002        ERRCD= 0000  ERACC= ****  ERLIM= ********
      EAX= 7d240a58  EBX= ff202fdc  ECX= 00064423  EDX= 00003624
      ESI= fff3272c  EDI= 7d240004  EBP= 00004a44  FLG= 00003202
2->   CS:EIP= 0160 : fff702a6  CSACC= c09d  CSLIM= ffffffff
      SS:ESP= 0030 : 00004a38  SSACC= 1097  SSLIM= 00003fff
3->   DS= 0158  DSACC= c0f3  DSLIM= ffffffff  CR0= fffffffb
4->   ES= 0158  ESACC= c0f3  ESLIM= ffffffff  CR2= 1a060014
      FS= 0000  FSACC= ****  FSLIM= ********
      GS= 0000  GSACC= ****  GSLIM= ********
     THE SYSTEM DETECTED AN INTERNAL PROCESSING
     ERROR AT LOCATION ##0160:fff6453f - 000d:a53f

     60000 , 9084
     038600d1
     INTERNAL REVISION 6 . 307  DATE: 92/03/01

GCC LIBC Exception Reports

Created when GCC LIBC (i.e. libc063.dll) receives an exception report. The format of GCC LIBC report will be
Killed by SIGILL
pid=0x0061 ppid=0x0024 tid=0x0001 slot=0x009b pri=0x0200 mc=0x0001 N:\MOZILLA-TEST\SEAMONKEY\SEAMONKEY.EXE
LIBC063 ffffffff:ffffffff
cs:eip=005b:20d15cc1 ss:esp=0053:0011eaf8 ebp=0011eb14 ds=0053 es=0053 fs=150b gs=0000 efl=00212206
eax=20d42348 ebx=0011eb50 ecx=20da1618 edx=0011eb50 edi=0000000c esi=20d15cc0
Process dumping was disabled, use DUMPPROC / PROCDUMP to enable it.

eWorkPlace Exception Log

Created when xfldr.dll (i.e eWorkplace or xWorkplace) or some DLL it loads generates an exception.

Innotek Font Library Exception Logs

Generated when the Innotek Font library (i.e. ft2lib.dll) generates an exception.

Exceptq Exception Reports

Generated by applications to use the exceptq exception handler.

Tracing

Tracing is extremely valuable when you need to analyze application activity over time. There are a number of general purpose tracing tools.

OS/2 Trace Facility

Dave's Blatsche's OS2TRACE

PMSPY

Logging

Logging in typically defined as recording unexpected events. This is a fuzzy defintion because the distinction between log data and trace data if often not black and white.

There are a large number of logging tools. The list includes

System Error Log

Mozilla Log Facility

Innotek Font Library Log Facility

eWorkplace Unexpected Condition Log

GCC LIBC Logging

TCP/IP Syslog Facility

Process Dump Facility

The process dump facility generates dump files in response to otherwise unhandled process exceptions or on demand.

Trap Dump Facility

The trap dump facility generates dump files in response to otherwise unhandled kernel exceptions or on demand.

Process Dump Formatter (pmdf)

System Analysis Tools

The system analysis tools analyze and report data that is defined within the kernel

Debuggers

Debuggers allow the operation of the kernel or an application to be controlled and examined in very fine detail.

Disassemblers

Disassemblers are useful for understanding programs that do not have available source code.

Final Thoughts

Valid HTML 4.01 Transitional