Uh oh!
There was an error while loading. Please reload this page.
Add crash report to createdump for Linux Watson - #55438
Conversation
ghost
commented
Jul 9, 2021
Tagging subscribers to this area: @tommcdon Issue DetailsFor Linux Watson the crash report will contains the .NET Core version, the faulting process name (the module/assembly containing Main) and the managed exception info (including the exception HRESULT) and thread stack trace of the thread the caused the crash. Add the CLRDATA_MODULE_IS_MAIN_MODULE flag to the DAC's IXCLRDataModule::GetFlags API. Add code to get the managed method name and write it out as "method_name" (even on MacOS). Only write PH_HDR_CANARY section if neccessary Add native frame symbolization (unmanaged_name) using dladdr (both Linux and MacOS). Demangle the stack frame symbols.
|
Uh oh!
There was an error while loading. Please reload this page.
Uh oh!
There was an error while loading. Please reload this page.
Uh oh!
There was an error while loading. Please reload this page.
Uh oh!
There was an error while loading. Please reload this page.
Uh oh!
There was an error while loading. Please reload this page.
Uh oh!
There was an error while loading. Please reload this page.
Uh oh!
There was an error while loading. Please reload this page.
Uh oh!
There was an error while loading. Please reload this page.
Only get the image info once and save in a global Demangle the stack frame symbols
Only write PH_HDR_CANARY section if neccessary
There was a problem hiding this comment.
The only thing is this is configurable, but this is not the default. I don't know how common it is to request case sensitivity.
There was a problem hiding this comment.
Lee mentioned it in passing and then I confirmed on my local MacBook. Not sure what to do if it is configurable. I'm going to leave it this way for now.
There was a problem hiding this comment.
When you say protocol 1, it's usually we are not making breaking changes until 2. Is this what we are intending? I know this is not a very public protocol, but I think it's worth to consider nonetheless.
There was a problem hiding this comment.
For the mono analyzer as long as it is greater than 0.0.6 it should be fine. Kyle mentioned just going to 1.0.0 so I thought I start both MacOS/Linux there.
Uh oh!
There was an error while loading. Please reload this page.
hoyosjs
commented
Jul 11, 2021
The GCC build is a known issue. |
For Linux Watson the crash report will contains the .NET Core version, the faulting process name (the module/assembly containing Main) and the managed exception info (including the exception HRESULT) and thread stack trace of the thread the caused the crash.
Add the CLRDATA_MODULE_IS_MAIN_MODULE flag to the DAC's IXCLRDataModule::GetFlags API.
Add code to get the managed method name and write it out as "method_name" (even on MacOS).
Only write PH_HDR_CANARY section if neccessary
Add native frame symbolization (unmanaged_name) using dladdr (both Linux and MacOS).
Demangle the stack frame symbols.