Questions tagged [sosex]

SOSEX is debugger extension for SOS managed code debugger.

SOSEX is another debugger extension targeted at the native debuggers and managed code debugging. It was developed by Steve Johnson and is available as a free download. SOSEX, not surprisingly, stands for SOS Extended. SOSEX adds a set of powerful debugging commands to your arsenal. Examples of such commands include deadlock detection, generational garbage collection commands, and more powerful breakpoint commands.

Downloads:

Source: Introduction to the Debugging Tools

46 questions
2
votes
1 answer

Get the threads which contain a certain .NET function in their call stack?

I have a user mode dump with 73 threads. Some of them are managed and some of them native. I would like to find the managed thread, which call stack contains a certain managed function. I have the SOSEX extension loaded in the debugger. Right now I…
mark
  • 59,016
  • 79
  • 296
  • 580
2
votes
1 answer

How to interpret mwaits output

I am trying to understand how can I use mwaits command things like type of lock, lock owner etc. I know that some of this could be done via sos commands but how can I use information below that I am getting with sosex mwaits command. 0:006>…
whoami
  • 1,689
  • 3
  • 22
  • 45
2
votes
1 answer

Dumping only rooted managed objects and/or statistics on them inside WinDbg

My problem is that dumpheap -stat returns an awful lot of objects and I have no idea which ones are rooted and which ones are not. Well, I can if I run the !mroot or !refs command on an individual address, but this approach does not scale very well…
mark
  • 59,016
  • 79
  • 296
  • 580
1
vote
0 answers

Using embedded symbols with WinDbg

I've compiled my assemby with embedded symbols: namespace SymbolsTest { static class Program { private static void Main() { var now = System.DateTime.Now; System.Console.WriteLine($"Now: {now}"); …
BanksySan
  • 27,362
  • 33
  • 117
  • 216
1
vote
1 answer

Stacktrace of an inner exception

w3wp process hosting my .NET application is crashing at random times. I have collected a dump file by setting up a second chance exception rule using DebugDiag. Here are the steps I have performed. The lastevent command shows a .NET…
whoami
  • 1,689
  • 3
  • 22
  • 45
1
vote
0 answers

Using windbg to identify the code a System.Action will execute

Something went horribly wrong with my WPF application and it appears I have 24 million actions on the dispatcher waiting to run. windbg with sosex shows me 0:000> !dumpgen 2 -stat Count Total Size …
JonDrnek
  • 1,414
  • 3
  • 19
  • 37
1
vote
2 answers

search objects with size larger then a threshold

One of class has many object present in .NET heap as discovered through following sos command. !dumpheap -stat -type MyClass Statistics: MT Count TotalSize Class Name 00007ff8e6253494 1700 164123 …
whoami
  • 1,689
  • 3
  • 22
  • 45
1
vote
1 answer

Error with !runaway command

I am looking a dump file collected from production environment for high cpu usage. I ran !threadpool and !runaway command as follows 0:000> !ThreadPool CPU utilization: 100% Worker Thread: Total: 6 Running: 2 Idle: 4 MaxLimit: 32767 MinLimit: 4 Work…
paul deter
  • 857
  • 2
  • 7
  • 20
1
vote
0 answers

DebugDiagv2 shows UNKNOWN_MODULE responsible for largest leak

The top memory consuming function is DomainBoundILStubClass.IL_STUB_PInvoke(UInt32). The module's base address is 0x00000000 so that's probably why it's the "UNKNOWN_MODULE" module. Here are the function details: Function details Function …
Marc Sherman
  • 2,303
  • 14
  • 22
1
vote
1 answer

Navigate from stackframe to stackframe in the Managed stack inside CDB/WinDbg

I have been given a dozen of dump files. Using windbg/sosex command !dumpstack -EE, a lot of them show these lines by the end : 0aa6ce7c 028ea126 (MethodDesc 02756288 +0x16 TheCompany.Toolbox.Log.Logger.Info(System.String)) 0aa6cecc 028ea126…
Stephane Rolland
  • 38,876
  • 35
  • 121
  • 169
1
vote
1 answer

Calculate size of object such that it include size of all its children and (grand children chain)

Let's say class A contains instances of B and C. B contains D, E and F whereas C contains instances of G, H and I. So when calculating the size of A, I would like to include size of all of its and its child items. When I use !dumpheap -stats…
crazy novice
  • 1,757
  • 3
  • 14
  • 36
1
vote
0 answers

Live debug a .NET application, the !mt command just returns "Unable to resolve call target. Error = 0x80004005"

When I break at: framework.SendEmail(string, string, string, string) and run !mt I get: Unable to resolve call target. Error = 0x80004005 What I believe should happen is the debugger should continue, then break at: smtputil.SendEmail(string,…
Jace
  • 1,445
  • 9
  • 20
1
vote
3 answers

Execution stops in possible deadlock

I've continued working on my program yesterday after a month long break. I didn't change anything on the code but now my application does not start anymore. At one point it just interrupts execution and seems to be stuck in a deadlock, though I'm…
SharpShade
  • 1,761
  • 2
  • 32
  • 45
1
vote
1 answer

Number of GC perfomred for various generations from a dump file

Is there anyway to get information about how many Garbage collection been performed for different generations from a dump file. When I try to run some psscor4 commands I get following. 0:003> !GCUsage The garbage collector data structures are not in…
whoami
  • 1,689
  • 3
  • 22
  • 45
1
vote
1 answer

Breakpoint not working for SOSEX using !mbp

I'm trying to debug a C# application using SOSEX in WinDbg for 32 bit environment in .NET Framework 4.0. I use sosex.dll for 32 bit v4.0. Here are the steps: sxe ld:mscorlib sxe ld:clrjit load Path to sosex.dll !mbp application.cs 34 (this sets…
user1502952
  • 1,390
  • 4
  • 13
  • 27