View Revisions: Issue #2899

Summary 0002899: Logbook: divide-by-zero encountered in callsign lookup when machine has no hardware perf counters
Revision 2018-09-28 07:50 by K7ZCZ
Description A dump was submitted in ticket 508543 that shows this stack in the Logbook:

0:012> .ecxr
eax=00000002 ebx=08d94030 ecx=00000000 edx=00000000 esi=0a69e8ec edi=00000000
eip=002b88bb esp=0a69d4bc ebp=0a69d50c iopl=0         nv up ei pl zr na pe nc
cs=0023  ss=002b  ds=002b  es=002b  fs=0053  gs=002b             efl=00010246
HRDLogbook!_alldiv+0x4b:
002b88bb f7f1            div     eax,ecx
0:012> kb
  *** Stack trace for last set context - .thread/.cxr resets it
 # ChildEBP RetAddr  Args to Child              
00 0a69d4c4 001439c5 6676db40 00000002 00000000 HRDLogbook!_alldiv+0x4b [f:\dd\vctools\crt\crtw32\helper\i386\lldiv.asm @ 121] 
01 0a69d50c 006386e2 ff6a4d44 14fb8688 156564c8 HRDLogbook!CStopwatch::~CStopwatch+0x95 [c:\ham radio\logbook\hrdlogbook\backgroundprocessingthreadlookups.cpp @ 67] 
02 0a69fb08 00696663 0a69fb30 14fb8688 00000001 HRDLogbook!CBackgroundProcessingThreadLookups::CountryLookup+0xfc2 [c:\ham radio\logbook\hrdlogbook\backgroundprocessingthreadlookups.cpp @ 16707566] 
03 0a69fb70 00684f5e 00000001 ff6a4dcc 00000000 HRDLogbook!CDXCObject::PerformLookup+0xa3 [c:\ham radio\logbook\hrdlogbook\dxclusterobject.cpp @ 1243] 
04 0a69fbb0 002b1beb 0594d730 ff6a4da4 00000000 HRDLogbook!CDXClusterDlg::LookupThreadProc+0x10e [c:\ham radio\logbook\hrdlogbook\dxclusterdlg.cpp @ 358] 
05 0a69fbe8 002b1d13 00000000 0a69fc00 7745343d HRDLogbook!_callthreadstartex+0x1b [f:\dd\vctools\crt\crtw32\startup\threadex.c @ 376] 
06 0a69fbf4 7745343d 059336d0 0a69fc40 77ab9832 HRDLogbook!_threadstartex+0x7c [f:\dd\vctools\crt\crtw32\startup\threadex.c @ 354] 
07 0a69fc00 77ab9832 059336d0 55b7ba6a 00000000 kernel32!BaseThreadInitThunk+0xe
08 0a69fc40 77ab9805 002b1c97 059336d0 00000000 ntdll!__RtlUserThreadStart+0x70
09 0a69fc58 00000000 002b1c97 059336d0 00000000 ntdll!_RtlUserThreadStart+0x1b


This stack shows a divide-by-zero error when we're computing the time elapsed for a database query to add to the logfile window.
Revision 2018-09-18 08:26 by K7ZCZ
Description
A dump was submitted in ticket 508543 that shows this stack in the Logbook:

0:012> .ecxr
eax=00000002 ebx=08d94030 ecx=00000000 edx=00000000 esi=0a69e8ec edi=00000000
eip=002b88bb esp=0a69d4bc ebp=0a69d50c iopl=0         nv up ei pl zr na pe nc
cs=0023  ss=002b  ds=002b  es=002b  fs=0053  gs=002b             efl=00010246
HRDLogbook!_alldiv+0x4b:
002b88bb f7f1            div     eax,ecx
0:012> kb
  *** Stack trace for last set context - .thread/.cxr resets it
 # ChildEBP RetAddr  Args to Child              
00 0a69d4c4 001439c5 6676db40 00000002 00000000 HRDLogbook!_alldiv+0x4b [f:\dd\vctools\crt\crtw32\helper\i386\lldiv.asm @ 121] 
01 0a69d50c 006386e2 ff6a4d44 14fb8688 156564c8 HRDLogbook!CStopwatch::~CStopwatch+0x95 [c:\ham radio\logbook\hrdlogbook\backgroundprocessingthreadlookups.cpp @ 67] 
02 0a69fb08 00696663 0a69fb30 14fb8688 00000001 HRDLogbook!CBackgroundProcessingThreadLookups::CountryLookup+0xfc2 [c:\ham radio\logbook\hrdlogbook\backgroundprocessingthreadlookups.cpp @ 16707566] 
03 0a69fb70 00684f5e 00000001 ff6a4dcc 00000000 HRDLogbook!CDXCObject::PerformLookup+0xa3 [c:\ham radio\logbook\hrdlogbook\dxclusterobject.cpp @ 1243] 
04 0a69fbb0 002b1beb 0594d730 ff6a4da4 00000000 HRDLogbook!CDXClusterDlg::LookupThreadProc+0x10e [c:\ham radio\logbook\hrdlogbook\dxclusterdlg.cpp @ 358] 
05 0a69fbe8 002b1d13 00000000 0a69fc00 7745343d HRDLogbook!_callthreadstartex+0x1b [f:\dd\vctools\crt\crtw32\startup\threadex.c @ 376] 
06 0a69fbf4 7745343d 059336d0 0a69fc40 77ab9832 HRDLogbook!_threadstartex+0x7c [f:\dd\vctools\crt\crtw32\startup\threadex.c @ 354] 
07 0a69fc00 77ab9832 059336d0 55b7ba6a 00000000 kernel32!BaseThreadInitThunk+0xe
08 0a69fc40 77ab9805 002b1c97 059336d0 00000000 ntdll!__RtlUserThreadStart+0x70
09 0a69fc58 00000000 002b1c97 059336d0 00000000 ntdll!_RtlUserThreadStart+0x1b


This stack shows a divide-by-zero error when we're computing the time elapsed for a database query to add to the logfile window.