Store entry assembly path for easy access for diagnostics#95027
Store entry assembly path for easy access for diagnostics#95027elinor-fung merged 3 commits intodotnet:mainfrom
Conversation
|
Tagging subscribers to this area: @vitek-karas, @agocke, @VSadov Issue Details
Example: Fixes #94474 @leculver
|
Co-authored-by: Aaron Robinson <arobins@microsoft.com>
This comment was marked as outdated.
This comment was marked as outdated.
|
/backport to release/8.0-staging |
|
/backport to release/7.0-staging |
|
Started backporting to release/8.0-staging: https://github.com/dotnet/runtime/actions/runs/6937553925 |
|
Started backporting to release/7.0-staging: https://github.com/dotnet/runtime/actions/runs/6937554937 |
|
@elinor-fung backporting to release/8.0-staging failed, the patch most likely resulted in conflicts: $ git am --3way --ignore-whitespace --keep-non-patch changes.patch
Applying: Store entry assembly path for easy access for diagnostics (dumps)
Using index info to reconstruct a base tree...
M src/coreclr/inc/dacvars.h
M src/coreclr/vm/vars.cpp
M src/coreclr/vm/vars.hpp
Falling back to patching base and 3-way merge...
Auto-merging src/coreclr/vm/vars.hpp
CONFLICT (content): Merge conflict in src/coreclr/vm/vars.hpp
Auto-merging src/coreclr/vm/vars.cpp
CONFLICT (content): Merge conflict in src/coreclr/vm/vars.cpp
Auto-merging src/coreclr/inc/dacvars.h
error: Failed to merge in the changes.
hint: Use 'git am --show-current-patch=diff' to see the failed patch
Patch failed at 0001 Store entry assembly path for easy access for diagnostics (dumps)
When you have resolved this problem, run "git am --continue".
If you prefer to skip this patch, run "git am --skip" instead.
To restore the original branch and stop patching, run "git am --abort".
Error: The process '/usr/bin/git' failed with exit code 128Please backport manually! |
|
@elinor-fung an error occurred while backporting to release/8.0-staging, please check the run log for details! Error: git am failed, most likely due to a merge conflict. |
|
@elinor-fung backporting to release/7.0-staging failed, the patch most likely resulted in conflicts: $ git am --3way --ignore-whitespace --keep-non-patch changes.patch
Applying: Store entry assembly path for easy access for diagnostics (dumps)
Using index info to reconstruct a base tree...
M src/coreclr/debug/daccess/enummem.cpp
M src/coreclr/inc/daccess.h
M src/coreclr/inc/dacvars.h
M src/coreclr/vm/corhost.cpp
M src/coreclr/vm/vars.cpp
M src/coreclr/vm/vars.hpp
Falling back to patching base and 3-way merge...
Auto-merging src/coreclr/vm/vars.hpp
CONFLICT (content): Merge conflict in src/coreclr/vm/vars.hpp
Auto-merging src/coreclr/vm/vars.cpp
CONFLICT (content): Merge conflict in src/coreclr/vm/vars.cpp
Auto-merging src/coreclr/vm/corhost.cpp
Auto-merging src/coreclr/inc/dacvars.h
Auto-merging src/coreclr/inc/daccess.h
Auto-merging src/coreclr/debug/daccess/enummem.cpp
error: Failed to merge in the changes.
hint: Use 'git am --show-current-patch=diff' to see the failed patch
Patch failed at 0001 Store entry assembly path for easy access for diagnostics (dumps)
When you have resolved this problem, run "git am --continue".
If you prefer to skip this patch, run "git am --skip" instead.
To restore the original branch and stop patching, run "git am --abort".
Error: The process '/usr/bin/git' failed with exit code 128Please backport manually! |
|
@elinor-fung an error occurred while backporting to release/7.0-staging, please check the run log for details! Error: git am failed, most likely due to a merge conflict. |
|
How is this supposed to be used? It looks like a DAC'ized global variable was added (g_EntryAssemblyPath) but that is only accessible by the DAC and there is no DAC API exposed to query it. |
|
It is simply accessed as a global variable rather than via a DAC API. |
|
The problem is that to access the global the tooling needs the symbol file. It is was an export, then tools like createdump or dotnet-dump, etc. could use it. I know that !analyze/Watson was it's intended usage so requiring a native debugger and symbols. |
g_EntryAssemblyPathglobal variable holding the full path to the entry assemblyExample:
Fixes #94474
@leculver
@dotnet/dotnet-diag