Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Automatic deadlocks detection #203

Open
gubenkoved opened this issue Feb 11, 2018 · 4 comments
Open

Automatic deadlocks detection #203

gubenkoved opened this issue Feb 11, 2018 · 4 comments
Labels

Comments

@gubenkoved
Copy link

gubenkoved commented Feb 11, 2018

It would be very helpful to exercise WinDbg SOSEX plugin's automatic deadlock detection mechanism (command !dlk). It will allow catching "easy" deadlocks (which is majority of cases) very quickly.

Details about SOSEX WinDbg extension:
http://www.stevestechspot.com/SOSEXANewDebuggingExtensionForManagedCode.aspx

Example of raw output of SOSEX !dlk:

0:164> !dlk
Examining SyncBlocks...
Scanning for ReaderWriterLock(Slim) instances...
Scanning for holders of ReaderWriterLock locks...
Scanning for holders of ReaderWriterLockSlim locks...
Examining CriticalSections...
Scanning for threads waiting on SyncBlocks...
Scanning for threads waiting on ReaderWriterLock locks...
Scanning for threads waiting on ReaderWriterLocksSlim locks...
Scanning for threads waiting on CriticalSections...
*DEADLOCK DETECTED*
CLR thread 0xd4 holds the lock on SyncBlock 00000249f2abbd98 OBJ:00000247ab61ae28[System.Object]
...and is waiting for the lock on SyncBlock 00000249ed62bd08 OBJ:00000248ab70e1b0[log4net.Appender.RollingFileAppender]
CLR thread 0xce holds the lock on SyncBlock 00000249ed62bd08 OBJ:00000248ab70e1b0[log4net.Appender.RollingFileAppender]
...and is waiting for the lock on SyncBlock 00000249f2abbd98 OBJ:00000247ab61ae28[System.Object]
CLR Thread 0xd4 is waiting at log4net.Appender.AppenderSkeleton.DoAppend(log4net.Core.LoggingEvent)(+0xf IL,+0x46 Native)
CLR Thread 0xce is waiting at System.Diagnostics.TraceInternal.WriteLine(System.String)(+0x17 IL,+0x86 Native) [f:\dd\NDP\fx\src\compmod\system\diagnostics\TraceInternal.cs @ 460,56]
@fremag
Copy link
Owner

fremag commented Feb 25, 2018

Hi,

Thanks for the idea.
Today, there is already something to see deadlocks with Blocking objects module.

I agree it's not as automatic as the feature you describe.
Unfortunately, I don't have a lot of time to work on Memoscope at the moment so I keep this feature request in my todo list (unless someone sends me a pull request).

@fremag fremag added the feature label Feb 26, 2018
@EwgenyFedotov
Copy link

It would be very helpful to exercise WinDbg SOSEX plugin's automatic deadlock detection mechanism (command !dlk). It will allow catching "easy" deadlocks (which is majority of cases) very quickly.

Details about SOSEX WinDbg extension:
http://www.stevestechspot.com/SOSEXANewDebuggingExtensionForManagedCode.aspx

Example of raw output of SOSEX !dlk:

Looks like http://www.stevestechspot.com isn't working anymore. Could you share this library?

@gubenkoved
Copy link
Author

It would be very helpful to exercise WinDbg SOSEX plugin's automatic deadlock detection mechanism (command !dlk). It will allow catching "easy" deadlocks (which is majority of cases) very quickly.
Details about SOSEX WinDbg extension:
http://www.stevestechspot.com/SOSEXANewDebuggingExtensionForManagedCode.aspx
Example of raw output of SOSEX !dlk:

Looks like http://www.stevestechspot.com isn't working anymore. Could you share this library?

There must have been a glitch on the site, it works for me now.

@EwgenyFedotov
Copy link

Details about SOSEX WinDbg extension:
http://www.stevestechspot.com/SOSEXANewDebuggingExtensionForManagedCode.aspx
Example of raw output of SOSEX !dlk:

Looks like http://www.stevestechspot.com isn't working anymore. Could you share this library?

There must have been a glitch on the site, it works for me now.

Home page works for me as well, but all links are broken or something. It is not possible to download any extension. For instance www.stevestechspot.com/downloads/sosex_64.zip doesn't work.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
Projects
None yet
Development

No branches or pull requests

3 participants