Hi,
We have minifilter driver, in which we register for PreCreate(), PostCreate() , PreRead(), PreWrite(), PreSetInformation() and PreCleanup() callbacks.
We run IFSTest and IOstress test with our driver to test its stability, but with windows 8.1 OPLOCK test is hanging and I am not able to figure out what exactly is going wrong, similar test is passing on witndows 7 but hanging on windows 8.1 for ExFAT volume, for other volumes there is no issue
Following is the call stack
kd> !fltkd.filter ffffe0014e29d7c0 8 1
FLT_FILTER: ffffe0014e29d7c0 “vfsmfd” “263410”
InstanceList : (ffffe0014e29d818)
Resource (ffffe0014e29d880) List [ffffe0014e2a3990-ffffe0014ed84c10] rCount=12
FLT_INSTANCE: ffffe0014e2a3930 “VEAI” “263400”
FLT_OBJECT: ffffe0014e2a3930 [01000000] Instance
RundownRef : 0x0000000000000000 (0)
PointerCount : 0x00000001
PrimaryLink : [ffffe0014edc0350-ffffe0014edc1020]
OperationRundownRef : ffffe0014ff8c2d0
Could not read field “Number” of fltmgr!_EX_RUNDOWN_REF_CACHE_AWARE from address: ffffe0014ff8c2d0
Flags : [00000000]
Volume : ffffe0014edc0800 “\Device\Mup”
Filter : ffffe0014e29d7c0 “vfsmfd”
TrackCompletionNodes : ffffe0014fa49260
ContextLock : (ffffe0014e2a39a0)
Context : 0000000000000000
CallbackNodes : (ffffe0014e2a39c0)
VolumeLink : [ffffe0014edc0350-ffffe0014edc1020]
FilterLink : [ffffe0014e272930-ffffe0014e29d880]
FLT_INSTANCE: ffffe0014e2728d0 “VEAI” “263400”
FLT_OBJECT: ffffe0014e2728d0 [01000000] Instance
RundownRef : 0x0000000000000000 (0)
PointerCount : 0x00000001
PrimaryLink : [ffffe0014fea74d0-ffffe0014e388bc0]
OperationRundownRef : ffffe0014fa1f1b0
Could not read field “Number” of fltmgr!_EX_RUNDOWN_REF_CACHE_AWARE from address: ffffe0014fa1f1b0
Flags : [00000000]
Volume : ffffe0014ef8f7f0 “\Device\HarddiskVolume2”
Filter : ffffe0014e29d7c0 “vfsmfd”
TrackCompletionNodes : ffffe0014fe735f0
ContextLock : (ffffe0014e272940)
Context : 0000000000000000
CallbackNodes : (ffffe0014e272960)
VolumeLink : [ffffe0014fea74d0-ffffe0014e388bc0]
FilterLink : [ffffe0014fbd6c10-ffffe0014e2a3990]
FLT_INSTANCE: ffffe0014fbd6bb0 “VEAI” “263400”
FLT_OBJECT: ffffe0014fbd6bb0 [01000000] Instance
RundownRef : 0x0000000000000000 (0)
PointerCount : 0x00000001
PrimaryLink : [ffffe0014f7d3880-ffffe0014f7d4020]
OperationRundownRef : ffffe0014fff9cf0
Could not read field “Number” of fltmgr!_EX_RUNDOWN_REF_CACHE_AWARE from address: ffffe0014fff9cf0
Flags : [00000000]
Volume : ffffe0014f2d37f0 “\Device\HarddiskVolume1”
Filter : ffffe0014e29d7c0 “vfsmfd”
TrackCompletionNodes : ffffe0014dd71500
ContextLock : (ffffe0014fbd6c20)
Context : 0000000000000000
CallbackNodes : (ffffe0014fbd6c40)
VolumeLink : [ffffe0014f7d3880-ffffe0014f7d4020]
FilterLink : [ffffe0014e388c10-ffffe0014e272930]
FLT_INSTANCE: ffffe0014e388bb0 “Default” “263410”
FLT_OBJECT: ffffe0014e388bb0 [01000000] Instance
RundownRef : 0x0000000000000002 (1)
PointerCount : 0x00000001
PrimaryLink : [ffffe0014e2728e0-ffffe0014efdec70]
OperationRundownRef : ffffe0014fec87b0
Could not read field “Number” of fltmgr!_EX_RUNDOWN_REF_CACHE_AWARE from address: ffffe0014fec87b0
Flags : [00000000]
Volume : ffffe0014ef8f7f0 “\Device\HarddiskVolume2”
Filter : ffffe0014e29d7c0 “vfsmfd”
TrackCompletionNodes : ffffe0015027c850
ContextLock : (ffffe0014e388c20)
Context : 0000000000000000
CallbackNodes : (ffffe0014e388c40)
VolumeLink : [ffffe0014e2728e0-ffffe0014efdec70]
FilterLink : [ffffe0014e227a60-ffffe0014fbd6c10]
FLT_INSTANCE: ffffe0014e227a00 “VEAI” “263400”
FLT_OBJECT: ffffe0014e227a00 [01000000] Instance
RundownRef : 0x0000000000000000 (0)
PointerCount : 0x00000001
PrimaryLink : [ffffe00150460020-ffffe001500543e0]
OperationRundownRef : ffffe0014fbc9720
Could not read field “Number” of fltmgr!_EX_RUNDOWN_REF_CACHE_AWARE from address: ffffe0014fbc9720
Flags : [00000000]
Volume : ffffe0014e245010 “\Device\HarddiskVolume7”
Filter : ffffe0014e29d7c0 “vfsmfd”
TrackCompletionNodes : ffffe001503e0260
ContextLock : (ffffe0014e227a70)
Context : 0000000000000000
CallbackNodes : (ffffe0014e227a90)
VolumeLink : [ffffe00150460020-ffffe001500543e0]
FilterLink : [ffffe0014e21cc10-ffffe0014e388c10]
FLT_INSTANCE: ffffe0014e21cbb0 “VEAI” “263400”
FLT_OBJECT: ffffe0014e21cbb0 [01000000] Instance
RundownRef : 0x0000000000000000 (0)
PointerCount : 0x00000001
PrimaryLink : [ffffe001504613e0-ffffe0014fbdc930]
OperationRundownRef : ffffe0014e2df7f0
Could not read field “Number” of fltmgr!_EX_RUNDOWN_REF_CACHE_AWARE from address: ffffe0014e2df7f0
Flags : [00000000]
Volume : ffffe0014e5be7f0 “\Device\HarddiskVolume8”
Filter : ffffe0014e29d7c0 “vfsmfd”
TrackCompletionNodes : ffffe00150011250
ContextLock : (ffffe0014e21cc20)
Context : 0000000000000000
CallbackNodes : (ffffe0014e21cc40)
VolumeLink : [ffffe001504613e0-ffffe0014fbdc930]
FilterLink : [ffffe0014f01fa80-ffffe0014e227a60]
FLT_INSTANCE: ffffe0014f01fa20 “VEAI” “263400”
FLT_OBJECT: ffffe0014f01fa20 [01000000] Instance
RundownRef : 0x0000000000000000 (0)
PointerCount : 0x00000001
PrimaryLink : [ffffe00150296020-ffffe001500d36c0]
OperationRundownRef : ffffe0014fe80390
Could not read field “Number” of fltmgr!_EX_RUNDOWN_REF_CACHE_AWARE from address: ffffe0014fe80390
Flags : [00000000]
Volume : ffffe0014e5b87f0 “\Device\HarddiskVolume11”
Filter : ffffe0014e29d7c0 “vfsmfd”
TrackCompletionNodes : ffffe0014f95d770
ContextLock : (ffffe0014f01fa90)
Context : 0000000000000000
CallbackNodes : (ffffe0014f01fab0)
VolumeLink : [ffffe00150296020-ffffe001500d36c0]
FilterLink : [ffffe0014e085430-ffffe0014e21cc10]
FLT_INSTANCE: ffffe0014e0853d0 “VEAI” “263400”
FLT_OBJECT: ffffe0014e0853d0 [01000000] Instance
RundownRef : 0x0000000000000000 (0)
PointerCount : 0x00000001
PrimaryLink : [ffffe0014e395b60-ffffe0014ee29940]
OperationRundownRef : ffffe0014e3cc240
Could not read field “Number” of fltmgr!_EX_RUNDOWN_REF_CACHE_AWARE from address: ffffe0014e3cc240
Flags : [00000000]
Volume : ffffe0015041f590 “\Device\HarddiskVolume6”
Filter : ffffe0014e29d7c0 “vfsmfd”
TrackCompletionNodes : ffffe0014fef1450
ContextLock : (ffffe0014e085440)
Context : 0000000000000000
CallbackNodes : (ffffe0014e085460)
VolumeLink : [ffffe0014e395b60-ffffe0014ee29940]
FilterLink : [ffffe0014fbf0b90-ffffe0014f01fa80]
FLT_INSTANCE: ffffe0014fbf0b30 “VEAI” “263400”
FLT_OBJECT: ffffe0014fbf0b30 [01000000] Instance
RundownRef : 0x0000000000000000 (0)
PointerCount : 0x00000001
PrimaryLink : [ffffe0014ffb57b0-ffffe001502499c0]
OperationRundownRef : ffffe0014edbd820
Could not read field “Number” of fltmgr!_EX_RUNDOWN_REF_CACHE_AWARE from address: ffffe0014edbd820
Flags : [00000000]
Volume : ffffe0014e14b010 “\Device\HarddiskVolume4”
Filter : ffffe0014e29d7c0 “vfsmfd”
TrackCompletionNodes : ffffe001500d8750
ContextLock : (ffffe0014fbf0ba0)
Context : 0000000000000000
CallbackNodes : (ffffe0014fbf0bc0)
VolumeLink : [ffffe0014ffb57b0-ffffe001502499c0]
FilterLink : [ffffe0014e158c10-ffffe0014e085430]
FLT_INSTANCE: ffffe0014e158bb0 “VEAI” “263400”
FLT_OBJECT: ffffe0014e158bb0 [01000000] Instance
RundownRef : 0x0000000000000000 (0)
PointerCount : 0x00000001
PrimaryLink : [ffffe0015018c190-ffffe0014dc95c70]
OperationRundownRef : ffffe0014f192bb0
Could not read field “Number” of fltmgr!_EX_RUNDOWN_REF_CACHE_AWARE from address: ffffe0014f192bb0
Flags : [00000000]
Volume : ffffe0014e0f0010 “\Device\HarddiskVolume5”
Filter : ffffe0014e29d7c0 “vfsmfd”
TrackCompletionNodes : ffffe0014dc91630
ContextLock : (ffffe0014e158c20)
Context : 0000000000000000
CallbackNodes : (ffffe0014e158c40)
VolumeLink : [ffffe0015018c190-ffffe0014dc95c70]
FilterLink : [ffffe0014f127070-ffffe0014fbf0b90]
FLT_INSTANCE: ffffe0014f127010 “VEAI” “263400”
FLT_OBJECT: ffffe0014f127010 [01000000] Instance
RundownRef : 0x0000000000000000 (0)
PointerCount : 0x00000001
PrimaryLink : [ffffe00150297410-ffffe0015043c020]
OperationRundownRef : ffffe0015053b180
Could not read field “Number” of fltmgr!_EX_RUNDOWN_REF_CACHE_AWARE from address: ffffe0015053b180
Flags : [00000000]
Volume : ffffe0014f1e7010 “\Device\HarddiskVolume10”
Filter : ffffe0014e29d7c0 “vfsmfd”
TrackCompletionNodes : ffffe0014fee0730
ContextLock : (ffffe0014f127080)
Context : 0000000000000000
CallbackNodes : (ffffe0014f1270a0)
VolumeLink : [ffffe00150297410-ffffe0015043c020]
FilterLink : [ffffe0014ed84c10-ffffe0014e158c10]
FLT_INSTANCE: ffffe0014ed84bb0 “VEAI” “263400”
FLT_OBJECT: ffffe0014ed84bb0 [01000000] Instance
RundownRef : 0x0000000000000000 (0)
PointerCount : 0x00000001
PrimaryLink : [ffffe001502f5020-ffffe0015042d560]
OperationRundownRef : ffffe001502ed800
Could not read field “Number” of fltmgr!_EX_RUNDOWN_REF_CACHE_AWARE from address: ffffe001502ed800
Flags : [00000000]
Volume : ffffe0014e5437f0 “\Device\HarddiskVolume9”
Filter : ffffe0014e29d7c0 “vfsmfd”
TrackCompletionNodes : ffffe0014e7459c0
ContextLock : (ffffe0014ed84c20)
Context : 0000000000000000
CallbackNodes : (ffffe0014ed84c40)
VolumeLink : [ffffe001502f5020-ffffe0015042d560]
FilterLink : [ffffe0014e29d880-ffffe0014f127070]
Object usage/reference information:
References to FLT_CONTEXT : 0
Allocations of FLT_CALLBACK_DATA : 0
Allocations of FLT_DEFERRED_IO_WORKITEM : 0
Allocations of FLT_GENERIC_WORKITEM : 0
References to FLT_FILE_NAME_INFORMATION : 0
Open files : 0
References to FLT_OBJECT : 2
List of objects used/referenced::
FLT_VERIFIER_OBJECT: ffffe0014e1da900
Object: ffffe0014e388bb0 Type:
FLT_VERIFIER_OBJECT: ffffe00150375120
Object: ffffe0014ef8f7f0 Type:
Please help to understand what is the issue and why IFStest for OPLOCK is hanging with my filter driver. If our driver is not there then there is no issue and tests are complting successfully.