Skip to content

Re-evaluate what SOS commands are supported on Linux/OS X #3169

@leculver

Description

@leculver

There are a surprising number of commands that are only supported on Windows when (presumably) their implementation should be usable on Linux and OS X.

Here's a list of useful commands that are scoped to Windows, when they would be useful regardless of the platform:

  • DumpSig
  • DumpSigElem
  • DumpRuntimeTypes
  • VerifyHeap
  • AnalyzeOOM
  • VerifyObj
  • ListNearObj
  • GCHeapStat
  • ThreadPool - maybe this is desktop clr only?
  • EHInfo
  • GCInfo
  • FindRoots
  • ObjSize

I didn't deeply inspect why each of these methods are disallowed, some are probably not useful in .Net Core anymore (like !ThreadPool maybe?). However, some of these commands are actually very important. !gcinfo, !verifyheap, !objsize, !verifyobj are all commands I use regularly on windows.

This was reported by a partner team.

Edit: I forgot to mention, the scenario here is debugging Linux coredumps in WinDbg. It would be nice if all of these worked in lldb if possible as well, but specifically here we need to unblock commands that will work in windbg.

Metadata

Metadata

Assignees

Labels

enhancementNew feature or request

Type

No type

Projects

No projects

Milestone

No milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions