-
Notifications
You must be signed in to change notification settings - Fork 4.7k
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
[cdac] Implement ISOSDacInterface::GetNestedExceptionData #103668
Conversation
Tagging subscribers to this area: @tommcdon |
@@ -58,6 +58,7 @@ static IContract IContract.Create(Target target, int version) | |||
public virtual ThreadStoreData GetThreadStoreData() => throw new NotImplementedException(); | |||
public virtual ThreadStoreCounts GetThreadCounts() => throw new NotImplementedException(); | |||
public virtual ThreadData GetThreadData(TargetPointer thread) => throw new NotImplementedException(); | |||
public virtual TargetPointer GetExceptionInfo(TargetPointer exception, out TargetPointer nextNestedException) => throw new NotImplementedException(); |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
This is on Thread
right now, since that's kind of where the exception pointer came from. We may want to put it on an Exception
contract - for handling the SOS-DAC APIs right now, it seems like it would just be this and getting info for the managed exception object (GetObjectExceptionData). But presumably we could add something to handle generating the stack trace such that SOS wouldn't directly inspect/assume things about StackTraceInfo
and StackTraceElement
:
https://github.com/dotnet/diagnostics/blob/d592e0da173e520ef42d4f9cdd9d7b138a9896fd/src/SOS/Strike/strike.cpp#L2454
https://github.com/dotnet/diagnostics/blob/d592e0da173e520ef42d4f9cdd9d7b138a9896fd/src/SOS/Strike/strike.cpp#L2766-L2796
https://github.com/dotnet/diagnostics/blob/d592e0da173e520ef42d4f9cdd9d7b138a9896fd/src/SOS/Strike/strike.cpp#L2610-L2617
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
BTW: The StackTraceElement details are changing in #103076
GetExceptionInfo
inException
contractISOSDacInterface::GetNestedExceptionData
in cDACObjectHandle
to cDAC typesContributes to #99302