Discussion:
TLS break from App Verifier/WinDBG
(too old to reply)
Terry Ahnstedt
2008-09-08 23:12:01 UTC
Permalink
In attempting to re-create the failure reported by Veritest during the Vista
certification for our app, WinDBG gives the following:

(bb0.aa4): Break instruction exception - code 80000003 (first chance)
eax=000001ff ebx=003b8fb8 ecx=7c91eab5 edx=1d97f9e7 esi=00000000 edi=000001ff
eip=7c90120e esp=1d97fad0 ebp=1d97fcd0 iopl=0 nv up ei pl nz na po nc
cs=001b ss=0023 ds=0023 es=0023 fs=003b gs=0000 efl=00000202
ntdll!DbgBreakPoint:
7c90120e cc int 3
0:005> g
CONPool : 0 objects ( 0 Open / 0 Free )


=======================================
VERIFIER STOP 00000352 : pid 0xBB0: Using an invalid TLS index.

0024ABBA : TLS index
00000000 : Not Used.
00000000 : Not Used.
00000000 : Not Used.


=======================================
This verifier stop is continuable.
After debugging it use `go' to continue.

=======================================

This is the break that Veritest is reporting as a show stopper for
certification.


We are using the MFC CDatabase class.

My investigation has found:
if the CDatabase object is opened with the 'Use Cursor Lib', then closing
the database object causes the above failure. With out the flag, thus
without the odbccu21.dll being loaded, the above failure does not happen.

Is this a known problem with the odbc cursor library, and is it possible to
pass the Veritest certification with this error?
Prasad Kakulamarri [MSFT]
2008-09-22 16:58:01 UTC
Permalink
Terry,
Please provide the callstack when this happens. Also, please answer the
following questions:
1) What OS are you testing this on?
2) What version of AppVerifier are you using?
3) Is your application written using managed code?

Thanks,
Prasad
Post by Terry Ahnstedt
In attempting to re-create the failure reported by Veritest during the Vista
(bb0.aa4): Break instruction exception - code 80000003 (first chance)
eax=000001ff ebx=003b8fb8 ecx=7c91eab5 edx=1d97f9e7 esi=00000000 edi=000001ff
eip=7c90120e esp=1d97fad0 ebp=1d97fcd0 iopl=0 nv up ei pl nz na po nc
cs=001b ss=0023 ds=0023 es=0023 fs=003b gs=0000 efl=00000202
7c90120e cc int 3
0:005> g
CONPool : 0 objects ( 0 Open / 0 Free )
=======================================
VERIFIER STOP 00000352 : pid 0xBB0: Using an invalid TLS index.
0024ABBA : TLS index
00000000 : Not Used.
00000000 : Not Used.
00000000 : Not Used.
=======================================
This verifier stop is continuable.
After debugging it use `go' to continue.
=======================================
This is the break that Veritest is reporting as a show stopper for
certification.
We are using the MFC CDatabase class.
if the CDatabase object is opened with the 'Use Cursor Lib', then closing
the database object causes the above failure. With out the flag, thus
without the odbccu21.dll being loaded, the above failure does not happen.
Is this a known problem with the odbc cursor library, and is it possible to
pass the Veritest certification with this error?
Loading...