Discussion:
AppVerifier-caused errors?
(too old to reply)
Nathan Mates
2008-01-14 23:27:52 UTC
Permalink
I'm trying to run the AppVerifier (v3.4.0158) on some code I've
got. In AppVerifier, I've selected all of the Basics, Compatability
tree items, and also the LuaPriv checkbox. When I run my app under the
debugger (DevStudio 2005SP1), while my app is starting up -- before it
gets to WinMain(), I see this message:

VERIFIER STOP 00000211 : pid 0x1474: Critical section is already initialized.

I can skip it, but the problem is, the callstack is completely
outside of my app, as far as I can tell. Is this a known limitation of
AppVerifier? Something else? Is there a better newsgroup to post on?

Here's the DevStudio output:

[...]
'bzone.exe': Loaded 'C:\WINDOWS\system32\shimeng.dll', Symbols loaded (source information stripped).
'bzone.exe': Loaded 'C:\WINDOWS\AppPatch\AcLayers.dll', Symbols loaded (source information stripped).
'bzone.exe': Loaded 'C:\WINDOWS\system32\userenv.dll', Symbols loaded (source information stripped).
'bzone.exe': Loaded 'C:\WINDOWS\system32\winspool.drv', Symbols loaded (source information stripped).


=======================================
VERIFIER STOP 00000211 : pid 0x1474: Critical section is already initialized.

715E9FC0 : Critical section address.
057E6FE0 : Critical section debug info address.
00000000 : First initialization stack trace. Use dps to dump it if non-NULL
00000000 : Not used.


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

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

bzone.exe has triggered a breakpoint
vrfcore.dll!VerifierStopMessageEx(_AVRF_LAYER_DESCRIPTOR * LayerDescriptor=0x003d7c10, unsigned long StopCode=0x00000211, unsigned long Param1=0x715e9fc0, unsigned long Param2=0x057e6fe0, unsigned long Param3=0x00000000, unsigned long Param4=0x00000000, _AVRF_STOP_EXTRA * StopExtra=0x00000000, ...) Line 530 C++
vfbasics.dll!VfBasicsStopMessage(unsigned long Code=0x00000211, char * Message=0x003c29e8, unsigned long Param1=0x715e9fc0, char * Description1=0x003c2540, unsigned long Param2=0x057e6fe0, char * Description2=0x003c2568, unsigned long Param3=0x00000000, char * Description3=0x003c2a08, unsigned long Param4=0x00000000, char * Description4=0x003c237c) Line 1066 + 0x20 bytes C
vfbasics.dll!AVrfpInitializeCriticalSectionCommon(_RTL_CRITICAL_SECTION * CriticalSection=0x715e9fc0, unsigned long SpinCount=0x80004000, unsigned long Flags=0x00000000) Line 2108 C
vfbasics.dll!AVrfpRtlInitializeCriticalSectionAndSpinCount(_RTL_CRITICAL_SECTION * CriticalSection=0x715e9fc0, unsigned long SpinCount=0x80004000) Line 2261 C
kernel32.dll!***@8() + 0x15 bytes
AcLayers.dll!ShimLib::InitializeHookCallback() + 0x4b bytes
AcLayers.dll!NotifyFn() + 0x15 bytes
AcLayers.dll!ShimLib::InitializeHooksEx() + 0x1c30 bytes
AcLayers.dll!ShimLib::GetHookAPIs() + 0x15 bytes
shimeng.dll!***@20() + 0x59f bytes
shimeng.dll!***@8() + 0x79 bytes
ntdll.dll!***@12() + 0x4c bytes
ntdll.dll!***@20() - 0x406 bytes
ntdll.dll!***@12() + 0x88d3 bytes
ntdll.dll!***@20() + 0x7 bytes
kernel32.dll!***@8() + 0xb bytes

Nathan Mates
--
<*> Nathan Mates - personal webpage http://www.visi.com/~nathan/
# Programmer at Pandemic Studios -- http://www.pandemicstudios.com/
# NOT speaking for Pandemic Studios. "Care not what the neighbors
# think. What are the facts, and to how many decimal places?" -R.A. Heinlein
uday
2008-01-23 00:28:07 UTC
Permalink
Bzone.exe has been shims already applied to it to ensure compatibility. If
you rename the EXE to something else, you will not see these DLLs in the
stack.
Uday (MSFT)
Post by Nathan Mates
I'm trying to run the AppVerifier (v3.4.0158) on some code I've
got. In AppVerifier, I've selected all of the Basics, Compatability
tree items, and also the LuaPriv checkbox. When I run my app under the
debugger (DevStudio 2005SP1), while my app is starting up -- before it
VERIFIER STOP 00000211 : pid 0x1474: Critical section is already initialized.
I can skip it, but the problem is, the callstack is completely
outside of my app, as far as I can tell. Is this a known limitation of
AppVerifier? Something else? Is there a better newsgroup to post on?
[...]
'bzone.exe': Loaded 'C:\WINDOWS\system32\shimeng.dll', Symbols loaded (source information stripped).
'bzone.exe': Loaded 'C:\WINDOWS\AppPatch\AcLayers.dll', Symbols loaded (source information stripped).
'bzone.exe': Loaded 'C:\WINDOWS\system32\userenv.dll', Symbols loaded (source information stripped).
'bzone.exe': Loaded 'C:\WINDOWS\system32\winspool.drv', Symbols loaded (source information stripped).
=======================================
VERIFIER STOP 00000211 : pid 0x1474: Critical section is already initialized.
715E9FC0 : Critical section address.
057E6FE0 : Critical section debug info address.
00000000 : First initialization stack trace. Use dps to dump it if non-NULL
00000000 : Not used.
=======================================
This verifier stop is continuable.
After debugging it use `go' to continue.
=======================================
bzone.exe has triggered a breakpoint
vrfcore.dll!VerifierStopMessageEx(_AVRF_LAYER_DESCRIPTOR * LayerDescriptor=0x003d7c10, unsigned long StopCode=0x00000211, unsigned long Param1=0x715e9fc0, unsigned long Param2=0x057e6fe0, unsigned long Param3=0x00000000, unsigned long Param4=0x00000000, _AVRF_STOP_EXTRA * StopExtra=0x00000000, ...) Line 530 C++
vfbasics.dll!VfBasicsStopMessage(unsigned long Code=0x00000211, char * Message=0x003c29e8, unsigned long Param1=0x715e9fc0, char * Description1=0x003c2540, unsigned long Param2=0x057e6fe0, char * Description2=0x003c2568, unsigned long Param3=0x00000000, char * Description3=0x003c2a08, unsigned long Param4=0x00000000, char * Description4=0x003c237c) Line 1066 + 0x20 bytes C
vfbasics.dll!AVrfpInitializeCriticalSectionCommon(_RTL_CRITICAL_SECTION * CriticalSection=0x715e9fc0, unsigned long SpinCount=0x80004000, unsigned long Flags=0x00000000) Line 2108 C
vfbasics.dll!AVrfpRtlInitializeCriticalSectionAndSpinCount(_RTL_CRITICAL_SECTION * CriticalSection=0x715e9fc0, unsigned long SpinCount=0x80004000) Line 2261 C
AcLayers.dll!ShimLib::InitializeHookCallback() + 0x4b bytes
AcLayers.dll!NotifyFn() + 0x15 bytes
AcLayers.dll!ShimLib::InitializeHooksEx() + 0x1c30 bytes
AcLayers.dll!ShimLib::GetHookAPIs() + 0x15 bytes
Nathan Mates
--
<*> Nathan Mates - personal webpage http://www.visi.com/~nathan/
# Programmer at Pandemic Studios -- http://www.pandemicstudios.com/
# NOT speaking for Pandemic Studios. "Care not what the neighbors
# think. What are the facts, and to how many decimal places?" -R.A. Heinlein
Nathan Mates
2008-01-23 00:54:33 UTC
Permalink
Post by uday
Bzone.exe has been shims already applied to it to ensure compatibility. If
you rename the EXE to something else, you will not see these DLLs in the
stack.
That leads to questions about these shims: who/where/why/how?
Basically, I *am* continuing to develop Battlezone II (a game
originally developed by Pandemic Studios, published by Activision) in
my spare time. I have no doubt that the original version of Battlezone
1 or II needed some shims, but I'd like to see if things work w/o
any such crutches.

Nathan Mates

--
<*> Nathan Mates - personal webpage http://www.visi.com/~nathan/
# Programmer at Pandemic Studios -- http://www.pandemicstudios.com/
# NOT speaking for Pandemic Studios. "Care not what the neighbors
# think. What are the facts, and to how many decimal places?" -R.A. Heinlein
Loading...