Hi Guys!
I run verifier and I during uninstall my driver I received bug check from verifier,
but “Current Pool Allocations = 0”, so why verifier rise bug check ? (verifier bug?)
Dump log:
*******************************************************************************
* *
* Bugcheck Analysis *
* *
*******************************************************************************
DRIVER_VERIFIER_DETECTED_VIOLATION (c4)
A device driver attempting to corrupt the system has been caught. This is
because the driver was specified in the registry as being suspect (by the
administrator) and the kernel has enabled substantial checking of this driver.
If the driver attempts to corrupt the system, bugchecks 0xC4, 0xC1 and 0xA will
be among the most commonly seen crashes.
Arguments:
Arg1: 0000000000000062, A driver has forgotten to free its pool allocations prior to unloading.
Arg2: ffffe0018a7964d0, name of the driver having the issue.
Arg3: ffffe0018a797b60, verifier internal structure with driver information.
Arg4: 0000000000700000, total # of (paged+nonpaged) allocations that weren’t freed.
Type !verifier 3 drivername.sys for info on the allocations
that were leaked that caused the bugcheck.
20: kd> !verifier 3 MySuperDriver.sys
Verify Level 209bb … enabled options are:
Special pool
Special irql
All pool allocations checked on unload
Io subsystem checking enabled
Deadlock detection enabled
DMA checking enabled
Security checks enabled
Miscellaneous checks enabled
DDI compliance checking enabled
Summary of All Verifier Statistics
RaiseIrqls 0x2
AcquireSpinLocks 0x3
Synch Executions 0x0
Trims 0x1f53
Pool Allocations Attempted 0x33e3f
Pool Allocations Succeeded 0x33e3f
Pool Allocations Succeeded SpecialPool 0x33e3f
Pool Allocations With NO TAG 0x0
Pool Allocations Failed 0x0
Resource Allocations Failed Deliberately 0x0
Current paged pool allocations 0x0 for 00000000 bytes
Peak paged pool allocations 0x1 for 00001860 bytes
Current nonpaged pool allocations 0x0 for 00000000 bytes
Peak nonpaged pool allocations 0x1 for 00000070 bytes
fffff80093ccb020: Unable to get special pool info
fffff80093ccb020: Unable to get special pool info
Driver Verification List
Entry State NonPagedPool PagedPool Module
ffffe00187815d50 Loaded 00000000 00000000 mysuperdriver.sys
Current Pool Allocations 00000000 00000000
Current Pool Bytes 00000000 00000000
Peak Pool Allocations 00000001 00000001
Peak Pool Bytes 00000070 00001860
20: kd> !poolused -> can not find my driver pool tag - clean
Bob