Revert "Replace CordbProcess::GetSharedDomain with GetAppDomain"#117221
Revert "Replace CordbProcess::GetSharedDomain with GetAppDomain"#117221davidwrighton merged 1 commit intomainfrom
CordbProcess::GetSharedDomain with GetAppDomain"#117221Conversation
|
Tagging subscribers to this area: @steveisok, @dotnet/dotnet-diag |
There was a problem hiding this comment.
Pull Request Overview
Reverts previous PR (#117037) that replaced thread-specific domain lookup with a single-domain model, restoring per-thread GetCurrentAppDomain behavior and introducing a shared default AppDomain fallback.
- Updated
IDacDbiInterfaceand its implementation to take avmThreadparameter forGetCurrentAppDomain. - Modified all callers in
CordbThread,CordbProcess, and related classes to pass their thread token. - Added
GetSharedAppDomain,m_sharedAppDomainfallback, andUpdateThreadsForAdUnloadto manage default domain unloading and thread cleanup.
Reviewed Changes
Copilot reviewed 8 out of 8 changed files in this pull request and generated 2 comments.
Show a summary per file
| File | Description |
|---|---|
| src/coreclr/debug/inc/dacdbiinterface.h | Changed GetCurrentAppDomain to accept a vmThread argument. |
| src/coreclr/debug/di/rsthread.cpp | Updated calls to GetCurrentAppDomain with vmThread. |
| src/coreclr/debug/di/rspriv.h | Adjusted CacheAssembly overload signatures; renamed GetAppDomain. |
| src/coreclr/debug/di/rsappdomain.cpp | Refactored assembly caching/removal to use VMPTR_DomainAssembly. |
| src/coreclr/debug/di/process.cpp | Added m_sharedAppDomain, GetSharedAppDomain, and thread cleanup. |
| src/coreclr/debug/di/module.cpp | Fallback to GetSharedAppDomain when no DomainAssembly is available. |
| src/coreclr/debug/daccess/dacdbiimpl.h/.cpp | Added thread-parameter overload for GetCurrentAppDomain. |
elinor-fung
left a comment
There was a problem hiding this comment.
Thanks. I only tried VS and SOS unit tests as basic testing, which apparently don't go down the broken path. Clearly needed windbg too.
|
#117221 is the fix for assemblies not being found in the cache. Assuming this goes in first, I'll update that to be the revert of the revert. |
…otnet#117037)" (dotnet#117221) This reverts commit a3929e2.
Reverts #117037 This breaks debugging basics.
Notably, enumerating the list of assemblies results in an infinite loop as it builds more and more CorDbAssembly objects.