Howdy again!
I believe that what I am seeing is a thread running the ntfs code holding a
lock to a vcb resource and then trying to acquire that same resource (even
though it already owns it). I have included more specific info at the end
of this message which may help show what’s happening. My problem is how to
work around or solve this problem:
===========================================================================
!irpfind output:
Irp [Thread] irpStack: (Mj,Mn) DevObj [Driver]
84277748 [842d0480] irpStack: ( 6, 0) 84293d40 [\FileSystem\pqfilter]
8427b948 [842d0480] irpStack: ( 6, 0) 843e0560 [\FileSystem\Ntfs]
84281e68 [842a5660] irpStack: ( c, 2) 843e0560 [\FileSystem\Ntfs]
looking at thread 842d0480…
kd> !thread 842d0480
THREAD 842d0480 Cid 33c.264 Teb: 7ffdb000 Win32Thread: e209b668 WAIT:
(Executive) KernelMode Non-Alertable
84287168 SynchronizationEvent
842d0568 NotificationTimer
IRP List:
84277748: (0006,0190) Flags: 00000830 Mdl: 00000000
Not impersonating
Owning Process 84344960
WaitTime (seconds) 682898
Context Switch Count 2511 LargeStack
UserTime 0:00:00.0620
KernelTime 0:00:03.0114
Start Address 0x77e92c50
Win32 Start Address 0x76e32ab8
Stack Init bdd6b8f0 Current bdd6b1f8 Base bdd6c000 Limit bdd65000 Call
bdd6b8fc
Priority 10 BasePriority 8 PriorityDecrement 0 DecrementCount 0
ChildEBP RetAddr Args to Child
bdd6b210 8042d61c 00000000 843e0a34 842d0480 ntoskrnl!KiSwapThread+0xc5
bdd6b238 80417148 84287168 00000000 00000000
ntoskrnl!KeWaitForSingleObject+0x1a1
bdd6b278 80416629 84271268 003e0a34 bdd6b290
ntoskrnl!ExpWaitForResource+0x1ac
bdd6b288 8041666e bdd6b32c be49e8e0 843e0a34
ntoskrnl!ExpAcquireResourceExclusiveLite+0x64
bdd6b290 be49e8e0*843e0a34*e1b35c01 84271268
ntoskrnl!ExAcquireResourceExclusiveLite+0x4b ****** <- waiting on lock for
vcb?
bdd6b2a0 be4ca605 84271268 843e0630 00000001
Ntfs!NtfsAcquireExclusiveVcb+0x1b
bdd6b32c be4c193e 84271268 8427b948 843e0560
Ntfs!NtfsCommonSetInformation+0x2dd
bdd6b39c 8041f54b 843e0560 8427b948 842e531c
Ntfs!NtfsFsdSetInformation+0xbf
bdd6b3b0 bdd2eb38 8426e808 84277748 8427ba90 ntoskrnl!IopfCallDriver+0x35
bdd6b414 bdd2d9d2 843e0560 84275c28 8426e008 pqscnt!FileMove+0x3e0
bdd6b4b4 bdd3e761 843e0560 84277748 84293d40
pqscnt!OnSetInformationDispatch+0x1a7
bdd6b524 8041f54b 84293d40 84277748 842778b4 pqfilter!FilterDispatch+0x15c
bdd6b538 804b6b7a bdd6b654 00c6e488 804c1308 ntoskrnl!IopfCallDriver+0x35
bdd6b638 80461691 000002e8 00c6e4c8 00c6e4ef
ntoskrnl!NtSetInformationFile+0x58a
bdd6b638 77f93e4a 000002e8 00c6e4c8 00c6e4ef ntoskrnl!KiSystemService+0xc4
00c6e4f0 00000000 00000000 00000000 00000000
ntdll!NtSetInformationFile+0xb
bdd6b914 804307da bdd6b9d4 bdd6b9cc 00000000 ntoskrnl!KiCallUserMode+0x4
bdd6b978 a001f885 00000002 bdd6b9a8 00000018
ntoskrnl!KeUserModeCallback+0xa6
bdd6bc08 a001f56f a0334db8 00000111 00017011 win32k!SfnDWORD+0xc2
bdd6bc60 a001b017 a0334db8 00000111 00017011
win32k!xxxSendMessageTimeout+0x2c7
bdd6bc80 a00535f0 a0334db8 00000111 00017011 win32k!xxxSendMessage+0x1a
bdd6bcc8 a00533c3 00000007 00000004 bdd6bcf0
win32k!xxxTranslateAccelerator+0x25d
bdd6bd50 80461691 000300da 00030113 00c6fef8
win32k!NtUserTranslateAccelerator+0xa1
bdd6bd50 77e19885 000300da 00030113 00c6fef8 ntoskrnl!KiSystemService+0xc4
bdd6b8f8 bdd6c000 bdd6bd64 00000000 00c6ffa4 +0x77e19885
00c6fe9c 00000000 00000000 00000000 00000000 +0xbdd6c000
===========================================================================
kd> dt ERESOURCE 843e0a34
+0x000 SystemResourcesList : _LIST_ENTRY
+0x008 OwnerTable : 0x842bc148
+0x00c ActiveCount : 1
+0x00e Flag : 0
+0x010 SharedWaiters : (null)
+0x014 ExclusiveWaiters : 0x84287168
+0x018 OwnerThreads : [2] _OWNER_ENTRY
+0x028 ContentionCount : 2
+0x02c NumberOfSharedWaiters : 0
+0x02e NumberOfExclusiveWaiters : 1
+0x030 Address : (null)
+0x030 CreatorBackTraceIndex : 0
+0x034 SpinLock : 0
Owner table for this resource:
addr quad hex quad hex
843e0a4c 0000000000000000 0000003d842d0480
You are currently subscribed to ntfsd as: $subst(‘Recip.EmailAddr’)
To unsubscribe send a blank email to leave-ntfsd-$subst(‘Recip.MemberIDChar’)@lists.osr.com