dotnet / runtime

.NET is a cross-platform runtime for cloud, mobile, desktop, and IoT apps.
https://docs.microsoft.com/dotnet/core/
MIT License
15.16k stars 4.71k forks source link

Facade assembly symbol indexing collision due to illinker #45649

Open NN--- opened 3 years ago

NN--- commented 3 years ago

Description

There are no symbols for System.Runtime.dll on Microsoft Symbols Server:

C:\Program Files\dotnet\shared\Microsoft.NETCore.App\5.0.0\System.Runtime.pdb: Cannot find or open the PDB file.
F:\workspace\_work\1\s\artifacts\obj\System.Runtime\net5.0-Release\System.Runtime.pdb: Cannot find or open the PDB file.
C:\WINDOWS\System.Runtime.pdb: Cannot find or open the PDB file.
C:\WINDOWS\symbols\dll\System.Runtime.pdb: Cannot find or open the PDB file.
C:\WINDOWS\dll\System.Runtime.pdb: Cannot find or open the PDB file.
c:\symbols\System.Runtime.pdb\a11baeed4c47491b80f6fb479b20a1e9ffffffff\System.Runtime.pdb: Cannot find or open the PDB file.
c:\symbols\MicrosoftPublicSymbols\System.Runtime.pdb\a11baeed4c47491b80f6fb479b20a1e9ffffffff\System.Runtime.pdb: Cannot find or open the PDB file.
c:\symbols\System.Runtime.pdb\a11baeed4c47491b80f6fb479b20a1e91\System.Runtime.pdb: Cannot find or open the PDB file.
c:\symbols\MicrosoftPublicSymbols\System.Runtime.pdb\a11baeed4c47491b80f6fb479b20a1e91\System.Runtime.pdb: Cannot find or open the PDB file.
SYMSRV:  BYINDEX: 0x20
         c:\symbols*https://referencesource.microsoft.com/symbols
         System.Runtime.pdb
         A11BAEED4C47491B80F6FB479B20A1E9ffffffff

SYMSRV:  UNC: c:\symbols\System.Runtime.pdb\A11BAEED4C47491B80F6FB479B20A1E9ffffffff\System.Runtime.pdb - path not found

SYMSRV:  UNC: c:\symbols\System.Runtime.pdb\A11BAEED4C47491B80F6FB479B20A1E9ffffffff\System.Runtime.pd_ - path not found

SYMSRV:  UNC: c:\symbols\System.Runtime.pdb\A11BAEED4C47491B80F6FB479B20A1E9ffffffff\file.ptr - path not found

SYMSRV:  HTTPGET: /symbols/System.Runtime.pdb/A11BAEED4C47491B80F6FB479B20A1E9ffffffff/System.Runtime.pdb

SYMSRV:  HttpQueryInfo: 80190194 - HTTP_STATUS_NOT_FOUND

SYMSRV:  HTTPGET: /symbols/System.Runtime.pdb/A11BAEED4C47491B80F6FB479B20A1E9ffffffff/System.Runtime.pd_

SYMSRV:  HttpQueryInfo: 80190194 - HTTP_STATUS_NOT_FOUND

SYMSRV:  HTTPGET: /symbols/System.Runtime.pdb/A11BAEED4C47491B80F6FB479B20A1E9ffffffff/file.ptr

SYMSRV:  HttpQueryInfo: 80190194 - HTTP_STATUS_NOT_FOUND

SYMSRV:  RESULT: 0x80190194

SYMSRV:  BYINDEX: 0x21
         c:\symbols*https://referencesource.microsoft.com/symbols
         System.Runtime.pdb
         A11BAEED4C47491B80F6FB479B20A1E91

SYMSRV:  UNC: c:\symbols\System.Runtime.pdb\A11BAEED4C47491B80F6FB479B20A1E91\System.Runtime.pdb - path not found

SYMSRV:  UNC: c:\symbols\System.Runtime.pdb\A11BAEED4C47491B80F6FB479B20A1E91\System.Runtime.pd_ - path not found

SYMSRV:  UNC: c:\symbols\System.Runtime.pdb\A11BAEED4C47491B80F6FB479B20A1E91\file.ptr - path not found

SYMSRV:  HTTPGET: /symbols/System.Runtime.pdb/A11BAEED4C47491B80F6FB479B20A1E91/System.Runtime.pdb

SYMSRV:  HttpQueryInfo: 80190194 - HTTP_STATUS_NOT_FOUND

SYMSRV:  HTTPGET: /symbols/System.Runtime.pdb/A11BAEED4C47491B80F6FB479B20A1E91/System.Runtime.pd_

SYMSRV:  HttpQueryInfo: 80190194 - HTTP_STATUS_NOT_FOUND

SYMSRV:  HTTPGET: /symbols/System.Runtime.pdb/A11BAEED4C47491B80F6FB479B20A1E91/file.ptr

SYMSRV:  HttpQueryInfo: 80190194 - HTTP_STATUS_NOT_FOUND

SYMSRV:  RESULT: 0x80190194

https://referencesource.microsoft.com/symbols: Symbols not found on symbol server.
SYMSRV:  BYINDEX: 0x22
         c:\symbols*https://msdl.microsoft.com/download/symbols
         System.Runtime.pdb
         A11BAEED4C47491B80F6FB479B20A1E9ffffffff

SYMSRV:  UNC: c:\symbols\System.Runtime.pdb\A11BAEED4C47491B80F6FB479B20A1E9ffffffff\System.Runtime.pdb - path not found

SYMSRV:  UNC: c:\symbols\System.Runtime.pdb\A11BAEED4C47491B80F6FB479B20A1E9ffffffff\System.Runtime.pd_ - path not found

SYMSRV:  UNC: c:\symbols\System.Runtime.pdb\A11BAEED4C47491B80F6FB479B20A1E9ffffffff\file.ptr - path not found

SYMSRV:  HTTPGET: /download/symbols/System.Runtime.pdb/A11BAEED4C47491B80F6FB479B20A1E9ffffffff/System.Runtime.pdb

SYMSRV:  HttpQueryInfo: 801900c8 - HTTP_STATUS_OK

SYMSRV:  System.Runtime.pdb from https://msdl.microsoft.com/download/symbols: 820 bytes 

SYMSRV:  PATH: c:\symbols\System.Runtime.pdb\A11BAEED4C47491B80F6FB479B20A1E9ffffffff\System.Runtime.pdb

SYMSRV:  RESULT: 0x00000000

https://msdl.microsoft.com/download/symbols: Symbols downloaded from symbol server.
c:\symbols\System.Runtime.pdb\A11BAEED4C47491B80F6FB479B20A1E9ffffffff\System.Runtime.pdb: PDB does not match image.
SYMSRV:  BYINDEX: 0x23
         c:\symbols*https://symbols.nuget.org/download/symbols
         System.Runtime.pdb
         A11BAEED4C47491B80F6FB479B20A1E9ffffffff

SYMSRV:  PATH: c:\symbols\System.Runtime.pdb\A11BAEED4C47491B80F6FB479B20A1E9ffffffff\System.Runtime.pdb

SYMSRV:  RESULT: 0x00000000

https://symbols.nuget.org/download/symbols: Symbols downloaded from symbol server.
c:\symbols\System.Runtime.pdb\A11BAEED4C47491B80F6FB479B20A1E9ffffffff\System.Runtime.pdb: PDB does not match image.
Dotnet-GitSync-Bot commented 3 years ago

I couldn't figure out the best area label to add to this issue. If you have write-permissions please help me learn by adding exactly one area label.

ghost commented 3 years ago

Tagging subscribers to this area: @tommcdon See info in area-owners.md if you want to be subscribed.

Issue Details
### Description There are no symbols for System.Runtime.dll on Microsoft Symbols Server: ``` C:\Program Files\dotnet\shared\Microsoft.NETCore.App\5.0.0\System.Runtime.pdb: Cannot find or open the PDB file. F:\workspace\_work\1\s\artifacts\obj\System.Runtime\net5.0-Release\System.Runtime.pdb: Cannot find or open the PDB file. C:\WINDOWS\System.Runtime.pdb: Cannot find or open the PDB file. C:\WINDOWS\symbols\dll\System.Runtime.pdb: Cannot find or open the PDB file. C:\WINDOWS\dll\System.Runtime.pdb: Cannot find or open the PDB file. c:\symbols\System.Runtime.pdb\a11baeed4c47491b80f6fb479b20a1e9ffffffff\System.Runtime.pdb: Cannot find or open the PDB file. c:\symbols\MicrosoftPublicSymbols\System.Runtime.pdb\a11baeed4c47491b80f6fb479b20a1e9ffffffff\System.Runtime.pdb: Cannot find or open the PDB file. c:\symbols\System.Runtime.pdb\a11baeed4c47491b80f6fb479b20a1e91\System.Runtime.pdb: Cannot find or open the PDB file. c:\symbols\MicrosoftPublicSymbols\System.Runtime.pdb\a11baeed4c47491b80f6fb479b20a1e91\System.Runtime.pdb: Cannot find or open the PDB file. SYMSRV: BYINDEX: 0x20 c:\symbols*https://referencesource.microsoft.com/symbols System.Runtime.pdb A11BAEED4C47491B80F6FB479B20A1E9ffffffff SYMSRV: UNC: c:\symbols\System.Runtime.pdb\A11BAEED4C47491B80F6FB479B20A1E9ffffffff\System.Runtime.pdb - path not found SYMSRV: UNC: c:\symbols\System.Runtime.pdb\A11BAEED4C47491B80F6FB479B20A1E9ffffffff\System.Runtime.pd_ - path not found SYMSRV: UNC: c:\symbols\System.Runtime.pdb\A11BAEED4C47491B80F6FB479B20A1E9ffffffff\file.ptr - path not found SYMSRV: HTTPGET: /symbols/System.Runtime.pdb/A11BAEED4C47491B80F6FB479B20A1E9ffffffff/System.Runtime.pdb SYMSRV: HttpQueryInfo: 80190194 - HTTP_STATUS_NOT_FOUND SYMSRV: HTTPGET: /symbols/System.Runtime.pdb/A11BAEED4C47491B80F6FB479B20A1E9ffffffff/System.Runtime.pd_ SYMSRV: HttpQueryInfo: 80190194 - HTTP_STATUS_NOT_FOUND SYMSRV: HTTPGET: /symbols/System.Runtime.pdb/A11BAEED4C47491B80F6FB479B20A1E9ffffffff/file.ptr SYMSRV: HttpQueryInfo: 80190194 - HTTP_STATUS_NOT_FOUND SYMSRV: RESULT: 0x80190194 SYMSRV: BYINDEX: 0x21 c:\symbols*https://referencesource.microsoft.com/symbols System.Runtime.pdb A11BAEED4C47491B80F6FB479B20A1E91 SYMSRV: UNC: c:\symbols\System.Runtime.pdb\A11BAEED4C47491B80F6FB479B20A1E91\System.Runtime.pdb - path not found SYMSRV: UNC: c:\symbols\System.Runtime.pdb\A11BAEED4C47491B80F6FB479B20A1E91\System.Runtime.pd_ - path not found SYMSRV: UNC: c:\symbols\System.Runtime.pdb\A11BAEED4C47491B80F6FB479B20A1E91\file.ptr - path not found SYMSRV: HTTPGET: /symbols/System.Runtime.pdb/A11BAEED4C47491B80F6FB479B20A1E91/System.Runtime.pdb SYMSRV: HttpQueryInfo: 80190194 - HTTP_STATUS_NOT_FOUND SYMSRV: HTTPGET: /symbols/System.Runtime.pdb/A11BAEED4C47491B80F6FB479B20A1E91/System.Runtime.pd_ SYMSRV: HttpQueryInfo: 80190194 - HTTP_STATUS_NOT_FOUND SYMSRV: HTTPGET: /symbols/System.Runtime.pdb/A11BAEED4C47491B80F6FB479B20A1E91/file.ptr SYMSRV: HttpQueryInfo: 80190194 - HTTP_STATUS_NOT_FOUND SYMSRV: RESULT: 0x80190194 https://referencesource.microsoft.com/symbols: Symbols not found on symbol server. SYMSRV: BYINDEX: 0x22 c:\symbols*https://msdl.microsoft.com/download/symbols System.Runtime.pdb A11BAEED4C47491B80F6FB479B20A1E9ffffffff SYMSRV: UNC: c:\symbols\System.Runtime.pdb\A11BAEED4C47491B80F6FB479B20A1E9ffffffff\System.Runtime.pdb - path not found SYMSRV: UNC: c:\symbols\System.Runtime.pdb\A11BAEED4C47491B80F6FB479B20A1E9ffffffff\System.Runtime.pd_ - path not found SYMSRV: UNC: c:\symbols\System.Runtime.pdb\A11BAEED4C47491B80F6FB479B20A1E9ffffffff\file.ptr - path not found SYMSRV: HTTPGET: /download/symbols/System.Runtime.pdb/A11BAEED4C47491B80F6FB479B20A1E9ffffffff/System.Runtime.pdb SYMSRV: HttpQueryInfo: 801900c8 - HTTP_STATUS_OK SYMSRV: System.Runtime.pdb from https://msdl.microsoft.com/download/symbols: 820 bytes SYMSRV: PATH: c:\symbols\System.Runtime.pdb\A11BAEED4C47491B80F6FB479B20A1E9ffffffff\System.Runtime.pdb SYMSRV: RESULT: 0x00000000 https://msdl.microsoft.com/download/symbols: Symbols downloaded from symbol server. c:\symbols\System.Runtime.pdb\A11BAEED4C47491B80F6FB479B20A1E9ffffffff\System.Runtime.pdb: PDB does not match image. SYMSRV: BYINDEX: 0x23 c:\symbols*https://symbols.nuget.org/download/symbols System.Runtime.pdb A11BAEED4C47491B80F6FB479B20A1E9ffffffff SYMSRV: PATH: c:\symbols\System.Runtime.pdb\A11BAEED4C47491B80F6FB479B20A1E9ffffffff\System.Runtime.pdb SYMSRV: RESULT: 0x00000000 https://symbols.nuget.org/download/symbols: Symbols downloaded from symbol server. c:\symbols\System.Runtime.pdb\A11BAEED4C47491B80F6FB479B20A1E9ffffffff\System.Runtime.pdb: PDB does not match image. ```
Author: NN---
Assignees: -
Labels: `area-Diagnostics-coreclr`, `untriaged`
Milestone: -
tommcdon commented 3 years ago

@hoyosjs @mikem8361

hoyosjs commented 3 years ago

@mmitche fyi

mikem8361 commented 3 years ago

Using dotnet-symbol I can download both the Windows and Portable PDBs for the 5.0.0 System.Runtime.dll.

I'm not sure why symsrv/symchk you are using doesn't find it. Can you send me the exact command line you are using?

hoyosjs commented 3 years ago

Looks like the reason is they are doing IL-only PDB fetching. We don't index those system.runtime.ni.pdb/be121b6a3b997441e06296fca1dbdc361/system.runtime.ni.pdb exists, but that's the after we changed to R2R.

NN--- commented 3 years ago

@mikem8361 I use Visual Studio with Microsoft symbols server.

hoyosjs commented 3 years ago

@mikem8361 the image has two debug directories:

ED702F4D cv           11C 00009BB8     7FB8    Format: RSDS, {BE121B6A-3B99-7441-E062-96FCA1DBDC36}, 1, System.Runtime.ni.pdb
ED702F4D cv            6E 00009CD4     80D4    Format: RSDS, {A11BAEED-4C47-491B-80F6-FB479B20A1E9}, 1, F:\workspace\_work\1\s\artifacts\obj\System.Runtime\net5.0-Release\System.Runtime.pdb

We index the R2R pdb, but not the IL-Only one.

mikem8361 commented 3 years ago

Dotnet-symbol downloads the IL one just fine with A11BAEED-4C47-491B-80F6-FB479B20A1E9.

hoyosjs commented 3 years ago

Looks like I had it wrong.

The IL PDB is indexed as

The R2R PDB is indexed as only under the full key:

However, the check seems to fail. I can repro this locally. Will continue taking a look.

gregg-miskelly commented 3 years ago

Looking at @NN--- 's trace, this looks the problem:

SYMSRV:  System.Runtime.pdb from https://msdl.microsoft.com/download/symbols: 820 bytes 
SYMSRV:  PATH: c:\symbols\System.Runtime.pdb\A11BAEED4C47491B80F6FB479B20A1E9ffffffff\System.Runtime.pdb

If I am reading that correctly, that means the portable IL PDB is being downloaded (good), but the symbol server is returning something which is either bogus, or which symsrv.dll doesn't understand, as 820 bytes is clearly not enough for a PDB.

@hoyosjs I think your problem could be different from what @NN--- saw. Are you seeing a case where the wrong PDB is downloaded?

@NN--- Do you still have this problem? If so, could you tell us more what 'c:\symbols\System.Runtime.pdb\A11BAEED4C47491B80F6FB479B20A1E9ffffffff\System.Runtime.pdb' looks like --

  1. Is it really 820 bytes?
  2. If so, if you open it in a hex editor, is a text file?
  3. If not, what are the first four bytes of the file?
hoyosjs commented 3 years ago

The PDB for System.Runtime should be pretty small. I verified the two PDBs do exist and the portable version is indeed (Both symweb and msdl) and that they are 820 bytes. (My local build has one with 696 bytes). It also has the classical portable "BSJB" set of first four bytes. I talked a bit with Chuck, and he confirmed what I thought: the SymReader for portable pdbs is saying things don't match. I'll do some testing on top of this removing VS from the equation.

hoyosjs I think your problem could be different from what @NN--- saw. Are you seeing a case where the wrong PDB is downloaded?

Yeah, mine ended up being actually not getting the metadata for creating the key at all. Ironically the only problematic DLL is the one this is System.Runtime. WinDBG somehow reconstructs the key. I might dig a bit more some other day.

hoyosjs commented 3 years ago

Seems like all the ones that fail are the type forwarding assemblies. Although some stuff doesn't add up - if I fetch the symbols from storage something wrong, which hints at a bug in the uploading process.

This is the full list that will fail verification - System.AppContext.dll - System.Buffers.dll - System.ComponentModel.dll - System.Data.DataSetExtensions.dll - System.Diagnostics.Contracts.dll - System.Diagnostics.Debug.dll - System.Diagnostics.StackTrace.dll - System.Diagnostics.Tools.dll - System.Diagnostics.Tracing.dll - System.Dynamic.Runtime.dll - System.Globalization.Calendars.dll - System.Globalization.Extensions.dll - System.Globalization.dll - System.IO.FileSystem.Primitives.dll - System.IO.dll - System.IO.UnmanagedMemoryStream.dll - System.Net.WebProxy.dll - System.Numerics.Vectors.dll - System.Reflection.Emit.ILGeneration.dll - System.Reflection.Emit.Lightweight.dll - System.Reflection.Emit.dll - System.Reflection.Extensions.dll - System.Reflection.dll - System.Reflection.Primitives.dll - System.Resources.Reader.dll - System.Resources.ResourceManager.dll - System.Runtime.CompilerServices.VisualC.dll - System.Runtime.Extensions.dll - System.Runtime.Handles.dll - System.Runtime.Intrinsics.dll - System.Runtime.Loader.dll - System.Runtime.dll - System.Runtime.Serialization.Json.dll - System.Runtime.Serialization.Xml.dll - System.Security.Principal.dll - System.Security.SecureString.dll - System.Text.Encoding.Extensions.dll - System.Text.Encoding.dll - System.Threading.Overlapped.dll - System.Threading.Tasks.Extensions.dll - System.Threading.Tasks.dll - System.Threading.Thread.dll - System.Threading.ThreadPool.dll - System.Threading.Timer.dll - System.ValueTuple.dll - System.Web.HttpUtility.dll - System.Xml.ReaderWriter.dll - System.Xml.XDocument.dll - System.Xml.XmlDocument.dll - System.Xml.XmlSerializer.dll - System.Xml.XPath.dll - System.Xml.XPath.XDocument.dll
ghost commented 3 years ago

Tagging subscribers to 'linkable-framework': @eerhardt, @vitek-karas, @LakshanF See info in area-owners.md if you want to be subscribed.

Issue Details
### Description There are no symbols for System.Runtime.dll on Microsoft Symbols Server: ``` C:\Program Files\dotnet\shared\Microsoft.NETCore.App\5.0.0\System.Runtime.pdb: Cannot find or open the PDB file. F:\workspace\_work\1\s\artifacts\obj\System.Runtime\net5.0-Release\System.Runtime.pdb: Cannot find or open the PDB file. C:\WINDOWS\System.Runtime.pdb: Cannot find or open the PDB file. C:\WINDOWS\symbols\dll\System.Runtime.pdb: Cannot find or open the PDB file. C:\WINDOWS\dll\System.Runtime.pdb: Cannot find or open the PDB file. c:\symbols\System.Runtime.pdb\a11baeed4c47491b80f6fb479b20a1e9ffffffff\System.Runtime.pdb: Cannot find or open the PDB file. c:\symbols\MicrosoftPublicSymbols\System.Runtime.pdb\a11baeed4c47491b80f6fb479b20a1e9ffffffff\System.Runtime.pdb: Cannot find or open the PDB file. c:\symbols\System.Runtime.pdb\a11baeed4c47491b80f6fb479b20a1e91\System.Runtime.pdb: Cannot find or open the PDB file. c:\symbols\MicrosoftPublicSymbols\System.Runtime.pdb\a11baeed4c47491b80f6fb479b20a1e91\System.Runtime.pdb: Cannot find or open the PDB file. SYMSRV: BYINDEX: 0x20 c:\symbols*https://referencesource.microsoft.com/symbols System.Runtime.pdb A11BAEED4C47491B80F6FB479B20A1E9ffffffff SYMSRV: UNC: c:\symbols\System.Runtime.pdb\A11BAEED4C47491B80F6FB479B20A1E9ffffffff\System.Runtime.pdb - path not found SYMSRV: UNC: c:\symbols\System.Runtime.pdb\A11BAEED4C47491B80F6FB479B20A1E9ffffffff\System.Runtime.pd_ - path not found SYMSRV: UNC: c:\symbols\System.Runtime.pdb\A11BAEED4C47491B80F6FB479B20A1E9ffffffff\file.ptr - path not found SYMSRV: HTTPGET: /symbols/System.Runtime.pdb/A11BAEED4C47491B80F6FB479B20A1E9ffffffff/System.Runtime.pdb SYMSRV: HttpQueryInfo: 80190194 - HTTP_STATUS_NOT_FOUND SYMSRV: HTTPGET: /symbols/System.Runtime.pdb/A11BAEED4C47491B80F6FB479B20A1E9ffffffff/System.Runtime.pd_ SYMSRV: HttpQueryInfo: 80190194 - HTTP_STATUS_NOT_FOUND SYMSRV: HTTPGET: /symbols/System.Runtime.pdb/A11BAEED4C47491B80F6FB479B20A1E9ffffffff/file.ptr SYMSRV: HttpQueryInfo: 80190194 - HTTP_STATUS_NOT_FOUND SYMSRV: RESULT: 0x80190194 SYMSRV: BYINDEX: 0x21 c:\symbols*https://referencesource.microsoft.com/symbols System.Runtime.pdb A11BAEED4C47491B80F6FB479B20A1E91 SYMSRV: UNC: c:\symbols\System.Runtime.pdb\A11BAEED4C47491B80F6FB479B20A1E91\System.Runtime.pdb - path not found SYMSRV: UNC: c:\symbols\System.Runtime.pdb\A11BAEED4C47491B80F6FB479B20A1E91\System.Runtime.pd_ - path not found SYMSRV: UNC: c:\symbols\System.Runtime.pdb\A11BAEED4C47491B80F6FB479B20A1E91\file.ptr - path not found SYMSRV: HTTPGET: /symbols/System.Runtime.pdb/A11BAEED4C47491B80F6FB479B20A1E91/System.Runtime.pdb SYMSRV: HttpQueryInfo: 80190194 - HTTP_STATUS_NOT_FOUND SYMSRV: HTTPGET: /symbols/System.Runtime.pdb/A11BAEED4C47491B80F6FB479B20A1E91/System.Runtime.pd_ SYMSRV: HttpQueryInfo: 80190194 - HTTP_STATUS_NOT_FOUND SYMSRV: HTTPGET: /symbols/System.Runtime.pdb/A11BAEED4C47491B80F6FB479B20A1E91/file.ptr SYMSRV: HttpQueryInfo: 80190194 - HTTP_STATUS_NOT_FOUND SYMSRV: RESULT: 0x80190194 https://referencesource.microsoft.com/symbols: Symbols not found on symbol server. SYMSRV: BYINDEX: 0x22 c:\symbols*https://msdl.microsoft.com/download/symbols System.Runtime.pdb A11BAEED4C47491B80F6FB479B20A1E9ffffffff SYMSRV: UNC: c:\symbols\System.Runtime.pdb\A11BAEED4C47491B80F6FB479B20A1E9ffffffff\System.Runtime.pdb - path not found SYMSRV: UNC: c:\symbols\System.Runtime.pdb\A11BAEED4C47491B80F6FB479B20A1E9ffffffff\System.Runtime.pd_ - path not found SYMSRV: UNC: c:\symbols\System.Runtime.pdb\A11BAEED4C47491B80F6FB479B20A1E9ffffffff\file.ptr - path not found SYMSRV: HTTPGET: /download/symbols/System.Runtime.pdb/A11BAEED4C47491B80F6FB479B20A1E9ffffffff/System.Runtime.pdb SYMSRV: HttpQueryInfo: 801900c8 - HTTP_STATUS_OK SYMSRV: System.Runtime.pdb from https://msdl.microsoft.com/download/symbols: 820 bytes SYMSRV: PATH: c:\symbols\System.Runtime.pdb\A11BAEED4C47491B80F6FB479B20A1E9ffffffff\System.Runtime.pdb SYMSRV: RESULT: 0x00000000 https://msdl.microsoft.com/download/symbols: Symbols downloaded from symbol server. c:\symbols\System.Runtime.pdb\A11BAEED4C47491B80F6FB479B20A1E9ffffffff\System.Runtime.pdb: PDB does not match image. SYMSRV: BYINDEX: 0x23 c:\symbols*https://symbols.nuget.org/download/symbols System.Runtime.pdb A11BAEED4C47491B80F6FB479B20A1E9ffffffff SYMSRV: PATH: c:\symbols\System.Runtime.pdb\A11BAEED4C47491B80F6FB479B20A1E9ffffffff\System.Runtime.pdb SYMSRV: RESULT: 0x00000000 https://symbols.nuget.org/download/symbols: Symbols downloaded from symbol server. c:\symbols\System.Runtime.pdb\A11BAEED4C47491B80F6FB479B20A1E9ffffffff\System.Runtime.pdb: PDB does not match image. ```
Author: NN---
Assignees: -
Labels: `area-Diagnostics-coreclr`, `area-Meta`, `linkable-framework`
Milestone: 6.0.0
hoyosjs commented 3 years ago

It looks like this is the linker that is causing this. If I build a facade - say System.Runtime - on x86 and x64 Windows we get a dll with two issues:

Example x64 pre linker ``` > mdv.exe .\artifacts\obj\System.Runtime\net6.0-Release\PreTrim\System.Runtime.dll /il- /md- Debug Directory: CodeView stamp=0x97DE86D5, version=(0x0100, 0x504D), size=105 path='E:\repos\runtime2\artifacts\obj\System.Runtime\net6.0-Release\System.Runtime.pdb', guid={ef5578b4-7d98-430f-84f5-5051bfd4876e}, age=1 PdbChecksum stamp=0x00000000, version=(0x0001, 0x0000), size=39 Reproducible stamp=0x00000000, version=(0x0000, 0x0000), size=0 MetadataVersion: v4.0.30319 ``` x64 after linking ``` mdv.exe .\artifacts\obj\System.Runtime\net6.0-Release\System.Runtime.dll /il- /md- Debug Directory: CodeView stamp=0xB37E1ACC, version=(0x0100, 0x504D), size=105 path='E:\repos\runtime2\artifacts\obj\System.Runtime\net6.0-Release\System.Runtime.pdb', guid={687893b0-1786-4ed3-bd94-c4c699e7946a}, age=1 Reproducible stamp=0x00000000, version=(0x0000, 0x0000), size=0 MetadataVersion: v4.0.30319 ``` x86 before linking ``` mdv.exe E:\repos\runtime3\artifacts\obj\System.Runtime\net6.0-Release\PreTrim\System.Runtime.dll /il- /md- Debug Directory: CodeView stamp=0xCD59805D, version=(0x0100, 0x504D), size=105 path='E:\repos\runtime3\artifacts\obj\System.Runtime\net6.0-Release\System.Runtime.pdb', guid={2013e38b-0f67-444f-aa0a-b255571151df}, age=1 PdbChecksum stamp=0x00000000, version=(0x0001, 0x0000), size=39 Reproducible stamp=0x00000000, version=(0x0000, 0x0000), size=0 MetadataVersion: v4.0.30319 ``` x86 Before Linking ``` mdv.exe .\artifacts\obj\System.Runtime\net6.0-Release\PreTrim\System.Runtime.dll /il- /md- Debug Directory: CodeView stamp=0xCD59805D, version=(0x0100, 0x504D), size=105 path='E:\repos\runtime3\artifacts\obj\System.Runtime\net6.0-Release\System.Runtime.pdb', guid={2013e38b-0f67-444f-aa0a-b255571151df}, age=1 PdbChecksum stamp=0x00000000, version=(0x0001, 0x0000), size=39 Reproducible stamp=0x00000000, version=(0x0000, 0x0000), size=0 MetadataVersion: v4.0.30319 ``` x86 after linking ``` mdv.exe E:\repos\runtime3\artifacts\obj\System.Runtime\net6.0-Release\System.Runtime.dll /il- /md- Debug Directory: CodeView stamp=0xA1057270, version=(0x0100, 0x504D), size=105 path='E:\repos\runtime3\artifacts\obj\System.Runtime\net6.0-Release\System.Runtime.pdb', guid={687893b0-1786-4ed3-bd94-c4c699e7946a}, age=1 Reproducible stamp=0x00000000, version=(0x0000, 0x0000), size=0 MetadataVersion: v4.0.30319 ```

This doesn't happen seem to happen with non-facade assemblies in the shared framework (at least on x64 windows where I verified). Currently there's no major break in the Watson-like scenarios, or dump debugging. However, I still don't fully know what causes the GUID collisions, so if this were ever to happen in non-facade IL assemblies and their PDBs, then we'd have a bigger issue.

So far it looks like for 5.0.0 - 5.0.2 facades for coreclr are indexed under the same guid and all facades for mono builds are under a separate guid if the two runtimes share . (For example System.Runtime forwards to System.Private.CoreLib, so there's one guid that gets used for coreclr and another for mono. On the other hand, System.XML.XPath forwards to System.Private.XML, which is largely shared leading to just using one GUID but three different timestamps).

CC: @tmat @tommcdon

vitek-karas commented 3 years ago

I would think that facades don't run through the linker - there's nothing to do on them anyway. Would be interesting to know why this happens (if it actually does).

As for the GUIDs being the same before and after linking - linker implemented deterministic output, which includes copying the MVID from the input to the output. If we use linker in the deterministic mode, then this behavior is currently by design. But maybe we need to change that behavior.

tmat commented 3 years ago

@vitek-karas Does the linker change anything in the PDB? If not then both timestamp and guid in the CodeView entry should remain the same.

If it does then either 1) The input PDB is never indexed. The linker can then keep both timestamp and guid in the CodeView entry the same as input. 2) The linker needs to update both timestamp and the guid in the CodeView and in the PDB itself (PDB ID) to values based on a hash of the new PDB content (with PDB ID bytes zeroed). Roslyn generates the timestamp and guid by calculating SHA2 hash and using 16 bytes of it for the guid and 4 bytes for the timestamp.

vitek-karas commented 3 years ago

Linker will roundtrip the PDB if it processes an assembly (it has to, if it's making changes to the assembly). The interesting bit here is that running linker on facades doesn't make sense, so we should not do it.

hoyosjs commented 3 years ago

@vitek-karas two quick questions:

vitek-karas commented 3 years ago

Got me a while to make sure I understand what's going on. There are basically two problems here:

It seems this should be a problem basically for any assembly which has exactly the same content across architectures.

eerhardt commented 3 years ago

@vitek-karas - is this something that will be addressed in 6.0?

vitek-karas commented 3 years ago

Hmm - I completely forgot about this. If it's important I can try to find somebody to tackle this.

Bartolomeus-649 commented 3 years ago

Not sure if this is the same issue as this or related, but Visual Studio does not find the symbols for System.Runtime.dll

https://referencesource.microsoft.com/symbols: Symbols downloaded from symbol server.
C:\Users\XXXXX\AppData\Local\Temp\SymbolCache\System.Runtime.pdb\76392EF435484AB3882E7D3888EBBEF7ffffffff\System.Runtime.pdb: PDB does not match image.

Click the sections below to see more details

Details on the `System.Runtime.dll` with the unfound symbols. ### This is a copy of the "System.Runtime.dll" row from the Modules window in Visual Studio Name= System.Runtime.dll Path= C:\Program Files\dotnet\shared\Microsoft.NETCore.App\5.0.8\System.Runtime.dll Optimized= Yes UserCode= N/A SymbolStatus= Cannot find or open the PDB file. SymbolFile= Order= 3 Version= 5.00.821.31504 Timestamp= Address= 00007FF9FBAD0000-00007FF9FBADA000 Process= [20360] iisexpress.exe AppDomain= [1] clrhost
Symbol load information ### Symbol load information for "System.Runtime.dll" (Copied from Visual Studio Modules windows) C:\Program Files\IIS Express\System.Runtime.pdb: Cannot find or open the PDB file. C:\Program Files\dotnet\shared\Microsoft.NETCore.App\5.0.8\System.Runtime.pdb: Cannot find or open the PDB file. D:\workspace\_work\1\s\artifacts\obj\System.Runtime\net5.0-Release\System.Runtime.pdb: Cannot find or open the PDB file. C:\WINDOWS\System.Runtime.pdb: Cannot find or open the PDB file. C:\WINDOWS\symbols\dll\System.Runtime.pdb: Cannot find or open the PDB file. C:\WINDOWS\dll\System.Runtime.pdb: Cannot find or open the PDB file. C:\Users\XXXXX\AppData\Local\Temp\SymbolCache\System.Runtime.pdb\76392ef435484ab3882e7d3888ebbef7ffffffff\System.Runtime.pdb: PDB does not match image. C:\Users\XXXXX\AppData\Local\Temp\SymbolCache\MicrosoftPublicSymbols\System.Runtime.pdb\76392ef435484ab3882e7d3888ebbef7ffffffff\System.Runtime.pdb: Cannot find or open the PDB file. C:\Users\XXXXX\AppData\Local\Temp\SymbolCache\System.Runtime.pdb\76392ef435484ab3882e7d3888ebbef71\System.Runtime.pdb: Cannot find or open the PDB file. C:\Users\XXXXX\AppData\Local\Temp\SymbolCache\MicrosoftPublicSymbols\System.Runtime.pdb\76392ef435484ab3882e7d3888ebbef71\System.Runtime.pdb: Cannot find or open the PDB file. C:\code\tfs\YYYYY\YYYYY\Main\Source\ZZZZZ\System.Runtime.pdb: Cannot find or open the PDB file. SYMSRV: BYINDEX: 0xEF C:\Users\XXXXX\AppData\Local\Temp\SymbolCache*https://referencesource.microsoft.com/symbols System.Runtime.pdb 76392EF435484AB3882E7D3888EBBEF7ffffffff SYMSRV: PATH: C:\Users\XXXXX\AppData\Local\Temp\SymbolCache\System.Runtime.pdb\76392EF435484AB3882E7D3888EBBEF7ffffffff\System.Runtime.pdb SYMSRV: RESULT: 0x00000000 https://referencesource.microsoft.com/symbols: Symbols downloaded from symbol server. C:\Users\XXXXX\AppData\Local\Temp\SymbolCache\System.Runtime.pdb\76392EF435484AB3882E7D3888EBBEF7ffffffff\System.Runtime.pdb: PDB does not match image. SYMSRV: BYINDEX: 0xF0 C:\Users\XXXXX\AppData\Local\Temp\SymbolCache*https://msdl.microsoft.com/download/symbols System.Runtime.pdb 76392EF435484AB3882E7D3888EBBEF7ffffffff SYMSRV: PATH: C:\Users\XXXXX\AppData\Local\Temp\SymbolCache\System.Runtime.pdb\76392EF435484AB3882E7D3888EBBEF7ffffffff\System.Runtime.pdb SYMSRV: RESULT: 0x00000000 https://msdl.microsoft.com/download/symbols: Symbols downloaded from symbol server. C:\Users\XXXXX\AppData\Local\Temp\SymbolCache\System.Runtime.pdb\76392EF435484AB3882E7D3888EBBEF7ffffffff\System.Runtime.pdb: PDB does not match image. SYMSRV: BYINDEX: 0xF1 C:\Users\XXXXX\AppData\Local\Temp\SymbolCache*https://symbols.nuget.org/download/symbols System.Runtime.pdb 76392EF435484AB3882E7D3888EBBEF7ffffffff SYMSRV: PATH: C:\Users\XXXXX\AppData\Local\Temp\SymbolCache\System.Runtime.pdb\76392EF435484AB3882E7D3888EBBEF7ffffffff\System.Runtime.pdb SYMSRV: RESULT: 0x00000000 https://symbols.nuget.org/download/symbols: Symbols downloaded from symbol server. C:\Users\XXXXX\AppData\Local\Temp\SymbolCache\System.Runtime.pdb\76392EF435484AB3882E7D3888EBBEF7ffffffff\System.Runtime.pdb: PDB does not match image.
eerhardt commented 3 years ago

@agocke @vitek-karas - is this something that will be addressed in 6.0?

ghost commented 3 years ago

Tagging subscribers to this area: @vitek-karas, @agocke, @vsadov See info in area-owners.md if you want to be subscribed.

Issue Details
### Description There are no symbols for System.Runtime.dll on Microsoft Symbols Server: ``` C:\Program Files\dotnet\shared\Microsoft.NETCore.App\5.0.0\System.Runtime.pdb: Cannot find or open the PDB file. F:\workspace\_work\1\s\artifacts\obj\System.Runtime\net5.0-Release\System.Runtime.pdb: Cannot find or open the PDB file. C:\WINDOWS\System.Runtime.pdb: Cannot find or open the PDB file. C:\WINDOWS\symbols\dll\System.Runtime.pdb: Cannot find or open the PDB file. C:\WINDOWS\dll\System.Runtime.pdb: Cannot find or open the PDB file. c:\symbols\System.Runtime.pdb\a11baeed4c47491b80f6fb479b20a1e9ffffffff\System.Runtime.pdb: Cannot find or open the PDB file. c:\symbols\MicrosoftPublicSymbols\System.Runtime.pdb\a11baeed4c47491b80f6fb479b20a1e9ffffffff\System.Runtime.pdb: Cannot find or open the PDB file. c:\symbols\System.Runtime.pdb\a11baeed4c47491b80f6fb479b20a1e91\System.Runtime.pdb: Cannot find or open the PDB file. c:\symbols\MicrosoftPublicSymbols\System.Runtime.pdb\a11baeed4c47491b80f6fb479b20a1e91\System.Runtime.pdb: Cannot find or open the PDB file. SYMSRV: BYINDEX: 0x20 c:\symbols*https://referencesource.microsoft.com/symbols System.Runtime.pdb A11BAEED4C47491B80F6FB479B20A1E9ffffffff SYMSRV: UNC: c:\symbols\System.Runtime.pdb\A11BAEED4C47491B80F6FB479B20A1E9ffffffff\System.Runtime.pdb - path not found SYMSRV: UNC: c:\symbols\System.Runtime.pdb\A11BAEED4C47491B80F6FB479B20A1E9ffffffff\System.Runtime.pd_ - path not found SYMSRV: UNC: c:\symbols\System.Runtime.pdb\A11BAEED4C47491B80F6FB479B20A1E9ffffffff\file.ptr - path not found SYMSRV: HTTPGET: /symbols/System.Runtime.pdb/A11BAEED4C47491B80F6FB479B20A1E9ffffffff/System.Runtime.pdb SYMSRV: HttpQueryInfo: 80190194 - HTTP_STATUS_NOT_FOUND SYMSRV: HTTPGET: /symbols/System.Runtime.pdb/A11BAEED4C47491B80F6FB479B20A1E9ffffffff/System.Runtime.pd_ SYMSRV: HttpQueryInfo: 80190194 - HTTP_STATUS_NOT_FOUND SYMSRV: HTTPGET: /symbols/System.Runtime.pdb/A11BAEED4C47491B80F6FB479B20A1E9ffffffff/file.ptr SYMSRV: HttpQueryInfo: 80190194 - HTTP_STATUS_NOT_FOUND SYMSRV: RESULT: 0x80190194 SYMSRV: BYINDEX: 0x21 c:\symbols*https://referencesource.microsoft.com/symbols System.Runtime.pdb A11BAEED4C47491B80F6FB479B20A1E91 SYMSRV: UNC: c:\symbols\System.Runtime.pdb\A11BAEED4C47491B80F6FB479B20A1E91\System.Runtime.pdb - path not found SYMSRV: UNC: c:\symbols\System.Runtime.pdb\A11BAEED4C47491B80F6FB479B20A1E91\System.Runtime.pd_ - path not found SYMSRV: UNC: c:\symbols\System.Runtime.pdb\A11BAEED4C47491B80F6FB479B20A1E91\file.ptr - path not found SYMSRV: HTTPGET: /symbols/System.Runtime.pdb/A11BAEED4C47491B80F6FB479B20A1E91/System.Runtime.pdb SYMSRV: HttpQueryInfo: 80190194 - HTTP_STATUS_NOT_FOUND SYMSRV: HTTPGET: /symbols/System.Runtime.pdb/A11BAEED4C47491B80F6FB479B20A1E91/System.Runtime.pd_ SYMSRV: HttpQueryInfo: 80190194 - HTTP_STATUS_NOT_FOUND SYMSRV: HTTPGET: /symbols/System.Runtime.pdb/A11BAEED4C47491B80F6FB479B20A1E91/file.ptr SYMSRV: HttpQueryInfo: 80190194 - HTTP_STATUS_NOT_FOUND SYMSRV: RESULT: 0x80190194 https://referencesource.microsoft.com/symbols: Symbols not found on symbol server. SYMSRV: BYINDEX: 0x22 c:\symbols*https://msdl.microsoft.com/download/symbols System.Runtime.pdb A11BAEED4C47491B80F6FB479B20A1E9ffffffff SYMSRV: UNC: c:\symbols\System.Runtime.pdb\A11BAEED4C47491B80F6FB479B20A1E9ffffffff\System.Runtime.pdb - path not found SYMSRV: UNC: c:\symbols\System.Runtime.pdb\A11BAEED4C47491B80F6FB479B20A1E9ffffffff\System.Runtime.pd_ - path not found SYMSRV: UNC: c:\symbols\System.Runtime.pdb\A11BAEED4C47491B80F6FB479B20A1E9ffffffff\file.ptr - path not found SYMSRV: HTTPGET: /download/symbols/System.Runtime.pdb/A11BAEED4C47491B80F6FB479B20A1E9ffffffff/System.Runtime.pdb SYMSRV: HttpQueryInfo: 801900c8 - HTTP_STATUS_OK SYMSRV: System.Runtime.pdb from https://msdl.microsoft.com/download/symbols: 820 bytes SYMSRV: PATH: c:\symbols\System.Runtime.pdb\A11BAEED4C47491B80F6FB479B20A1E9ffffffff\System.Runtime.pdb SYMSRV: RESULT: 0x00000000 https://msdl.microsoft.com/download/symbols: Symbols downloaded from symbol server. c:\symbols\System.Runtime.pdb\A11BAEED4C47491B80F6FB479B20A1E9ffffffff\System.Runtime.pdb: PDB does not match image. SYMSRV: BYINDEX: 0x23 c:\symbols*https://symbols.nuget.org/download/symbols System.Runtime.pdb A11BAEED4C47491B80F6FB479B20A1E9ffffffff SYMSRV: PATH: c:\symbols\System.Runtime.pdb\A11BAEED4C47491B80F6FB479B20A1E9ffffffff\System.Runtime.pdb SYMSRV: RESULT: 0x00000000 https://symbols.nuget.org/download/symbols: Symbols downloaded from symbol server. c:\symbols\System.Runtime.pdb\A11BAEED4C47491B80F6FB479B20A1E9ffffffff\System.Runtime.pdb: PDB does not match image. ```
Author: NN---
Assignees: -
Labels: `area-AssemblyLoader-coreclr`, `linkable-framework`
Milestone: 6.0.0
ghost commented 3 years ago

Tagging subscribers to this area: @dotnet/runtime-infrastructure See info in area-owners.md if you want to be subscribed.

Issue Details
### Description There are no symbols for System.Runtime.dll on Microsoft Symbols Server: ``` C:\Program Files\dotnet\shared\Microsoft.NETCore.App\5.0.0\System.Runtime.pdb: Cannot find or open the PDB file. F:\workspace\_work\1\s\artifacts\obj\System.Runtime\net5.0-Release\System.Runtime.pdb: Cannot find or open the PDB file. C:\WINDOWS\System.Runtime.pdb: Cannot find or open the PDB file. C:\WINDOWS\symbols\dll\System.Runtime.pdb: Cannot find or open the PDB file. C:\WINDOWS\dll\System.Runtime.pdb: Cannot find or open the PDB file. c:\symbols\System.Runtime.pdb\a11baeed4c47491b80f6fb479b20a1e9ffffffff\System.Runtime.pdb: Cannot find or open the PDB file. c:\symbols\MicrosoftPublicSymbols\System.Runtime.pdb\a11baeed4c47491b80f6fb479b20a1e9ffffffff\System.Runtime.pdb: Cannot find or open the PDB file. c:\symbols\System.Runtime.pdb\a11baeed4c47491b80f6fb479b20a1e91\System.Runtime.pdb: Cannot find or open the PDB file. c:\symbols\MicrosoftPublicSymbols\System.Runtime.pdb\a11baeed4c47491b80f6fb479b20a1e91\System.Runtime.pdb: Cannot find or open the PDB file. SYMSRV: BYINDEX: 0x20 c:\symbols*https://referencesource.microsoft.com/symbols System.Runtime.pdb A11BAEED4C47491B80F6FB479B20A1E9ffffffff SYMSRV: UNC: c:\symbols\System.Runtime.pdb\A11BAEED4C47491B80F6FB479B20A1E9ffffffff\System.Runtime.pdb - path not found SYMSRV: UNC: c:\symbols\System.Runtime.pdb\A11BAEED4C47491B80F6FB479B20A1E9ffffffff\System.Runtime.pd_ - path not found SYMSRV: UNC: c:\symbols\System.Runtime.pdb\A11BAEED4C47491B80F6FB479B20A1E9ffffffff\file.ptr - path not found SYMSRV: HTTPGET: /symbols/System.Runtime.pdb/A11BAEED4C47491B80F6FB479B20A1E9ffffffff/System.Runtime.pdb SYMSRV: HttpQueryInfo: 80190194 - HTTP_STATUS_NOT_FOUND SYMSRV: HTTPGET: /symbols/System.Runtime.pdb/A11BAEED4C47491B80F6FB479B20A1E9ffffffff/System.Runtime.pd_ SYMSRV: HttpQueryInfo: 80190194 - HTTP_STATUS_NOT_FOUND SYMSRV: HTTPGET: /symbols/System.Runtime.pdb/A11BAEED4C47491B80F6FB479B20A1E9ffffffff/file.ptr SYMSRV: HttpQueryInfo: 80190194 - HTTP_STATUS_NOT_FOUND SYMSRV: RESULT: 0x80190194 SYMSRV: BYINDEX: 0x21 c:\symbols*https://referencesource.microsoft.com/symbols System.Runtime.pdb A11BAEED4C47491B80F6FB479B20A1E91 SYMSRV: UNC: c:\symbols\System.Runtime.pdb\A11BAEED4C47491B80F6FB479B20A1E91\System.Runtime.pdb - path not found SYMSRV: UNC: c:\symbols\System.Runtime.pdb\A11BAEED4C47491B80F6FB479B20A1E91\System.Runtime.pd_ - path not found SYMSRV: UNC: c:\symbols\System.Runtime.pdb\A11BAEED4C47491B80F6FB479B20A1E91\file.ptr - path not found SYMSRV: HTTPGET: /symbols/System.Runtime.pdb/A11BAEED4C47491B80F6FB479B20A1E91/System.Runtime.pdb SYMSRV: HttpQueryInfo: 80190194 - HTTP_STATUS_NOT_FOUND SYMSRV: HTTPGET: /symbols/System.Runtime.pdb/A11BAEED4C47491B80F6FB479B20A1E91/System.Runtime.pd_ SYMSRV: HttpQueryInfo: 80190194 - HTTP_STATUS_NOT_FOUND SYMSRV: HTTPGET: /symbols/System.Runtime.pdb/A11BAEED4C47491B80F6FB479B20A1E91/file.ptr SYMSRV: HttpQueryInfo: 80190194 - HTTP_STATUS_NOT_FOUND SYMSRV: RESULT: 0x80190194 https://referencesource.microsoft.com/symbols: Symbols not found on symbol server. SYMSRV: BYINDEX: 0x22 c:\symbols*https://msdl.microsoft.com/download/symbols System.Runtime.pdb A11BAEED4C47491B80F6FB479B20A1E9ffffffff SYMSRV: UNC: c:\symbols\System.Runtime.pdb\A11BAEED4C47491B80F6FB479B20A1E9ffffffff\System.Runtime.pdb - path not found SYMSRV: UNC: c:\symbols\System.Runtime.pdb\A11BAEED4C47491B80F6FB479B20A1E9ffffffff\System.Runtime.pd_ - path not found SYMSRV: UNC: c:\symbols\System.Runtime.pdb\A11BAEED4C47491B80F6FB479B20A1E9ffffffff\file.ptr - path not found SYMSRV: HTTPGET: /download/symbols/System.Runtime.pdb/A11BAEED4C47491B80F6FB479B20A1E9ffffffff/System.Runtime.pdb SYMSRV: HttpQueryInfo: 801900c8 - HTTP_STATUS_OK SYMSRV: System.Runtime.pdb from https://msdl.microsoft.com/download/symbols: 820 bytes SYMSRV: PATH: c:\symbols\System.Runtime.pdb\A11BAEED4C47491B80F6FB479B20A1E9ffffffff\System.Runtime.pdb SYMSRV: RESULT: 0x00000000 https://msdl.microsoft.com/download/symbols: Symbols downloaded from symbol server. c:\symbols\System.Runtime.pdb\A11BAEED4C47491B80F6FB479B20A1E9ffffffff\System.Runtime.pdb: PDB does not match image. SYMSRV: BYINDEX: 0x23 c:\symbols*https://symbols.nuget.org/download/symbols System.Runtime.pdb A11BAEED4C47491B80F6FB479B20A1E9ffffffff SYMSRV: PATH: c:\symbols\System.Runtime.pdb\A11BAEED4C47491B80F6FB479B20A1E9ffffffff\System.Runtime.pdb SYMSRV: RESULT: 0x00000000 https://symbols.nuget.org/download/symbols: Symbols downloaded from symbol server. c:\symbols\System.Runtime.pdb\A11BAEED4C47491B80F6FB479B20A1E9ffffffff\System.Runtime.pdb: PDB does not match image. ```
Author: NN---
Assignees: -
Labels: `area-AssemblyLoader-coreclr`, `area-Infrastructure`, `linkable-framework`
Milestone: 6.0.0
ghost commented 3 years ago

Tagging subscribers to this area: @Anipik, @safern, @ViktorHofer See info in area-owners.md if you want to be subscribed.

Issue Details
### Description There are no symbols for System.Runtime.dll on Microsoft Symbols Server: ``` C:\Program Files\dotnet\shared\Microsoft.NETCore.App\5.0.0\System.Runtime.pdb: Cannot find or open the PDB file. F:\workspace\_work\1\s\artifacts\obj\System.Runtime\net5.0-Release\System.Runtime.pdb: Cannot find or open the PDB file. C:\WINDOWS\System.Runtime.pdb: Cannot find or open the PDB file. C:\WINDOWS\symbols\dll\System.Runtime.pdb: Cannot find or open the PDB file. C:\WINDOWS\dll\System.Runtime.pdb: Cannot find or open the PDB file. c:\symbols\System.Runtime.pdb\a11baeed4c47491b80f6fb479b20a1e9ffffffff\System.Runtime.pdb: Cannot find or open the PDB file. c:\symbols\MicrosoftPublicSymbols\System.Runtime.pdb\a11baeed4c47491b80f6fb479b20a1e9ffffffff\System.Runtime.pdb: Cannot find or open the PDB file. c:\symbols\System.Runtime.pdb\a11baeed4c47491b80f6fb479b20a1e91\System.Runtime.pdb: Cannot find or open the PDB file. c:\symbols\MicrosoftPublicSymbols\System.Runtime.pdb\a11baeed4c47491b80f6fb479b20a1e91\System.Runtime.pdb: Cannot find or open the PDB file. SYMSRV: BYINDEX: 0x20 c:\symbols*https://referencesource.microsoft.com/symbols System.Runtime.pdb A11BAEED4C47491B80F6FB479B20A1E9ffffffff SYMSRV: UNC: c:\symbols\System.Runtime.pdb\A11BAEED4C47491B80F6FB479B20A1E9ffffffff\System.Runtime.pdb - path not found SYMSRV: UNC: c:\symbols\System.Runtime.pdb\A11BAEED4C47491B80F6FB479B20A1E9ffffffff\System.Runtime.pd_ - path not found SYMSRV: UNC: c:\symbols\System.Runtime.pdb\A11BAEED4C47491B80F6FB479B20A1E9ffffffff\file.ptr - path not found SYMSRV: HTTPGET: /symbols/System.Runtime.pdb/A11BAEED4C47491B80F6FB479B20A1E9ffffffff/System.Runtime.pdb SYMSRV: HttpQueryInfo: 80190194 - HTTP_STATUS_NOT_FOUND SYMSRV: HTTPGET: /symbols/System.Runtime.pdb/A11BAEED4C47491B80F6FB479B20A1E9ffffffff/System.Runtime.pd_ SYMSRV: HttpQueryInfo: 80190194 - HTTP_STATUS_NOT_FOUND SYMSRV: HTTPGET: /symbols/System.Runtime.pdb/A11BAEED4C47491B80F6FB479B20A1E9ffffffff/file.ptr SYMSRV: HttpQueryInfo: 80190194 - HTTP_STATUS_NOT_FOUND SYMSRV: RESULT: 0x80190194 SYMSRV: BYINDEX: 0x21 c:\symbols*https://referencesource.microsoft.com/symbols System.Runtime.pdb A11BAEED4C47491B80F6FB479B20A1E91 SYMSRV: UNC: c:\symbols\System.Runtime.pdb\A11BAEED4C47491B80F6FB479B20A1E91\System.Runtime.pdb - path not found SYMSRV: UNC: c:\symbols\System.Runtime.pdb\A11BAEED4C47491B80F6FB479B20A1E91\System.Runtime.pd_ - path not found SYMSRV: UNC: c:\symbols\System.Runtime.pdb\A11BAEED4C47491B80F6FB479B20A1E91\file.ptr - path not found SYMSRV: HTTPGET: /symbols/System.Runtime.pdb/A11BAEED4C47491B80F6FB479B20A1E91/System.Runtime.pdb SYMSRV: HttpQueryInfo: 80190194 - HTTP_STATUS_NOT_FOUND SYMSRV: HTTPGET: /symbols/System.Runtime.pdb/A11BAEED4C47491B80F6FB479B20A1E91/System.Runtime.pd_ SYMSRV: HttpQueryInfo: 80190194 - HTTP_STATUS_NOT_FOUND SYMSRV: HTTPGET: /symbols/System.Runtime.pdb/A11BAEED4C47491B80F6FB479B20A1E91/file.ptr SYMSRV: HttpQueryInfo: 80190194 - HTTP_STATUS_NOT_FOUND SYMSRV: RESULT: 0x80190194 https://referencesource.microsoft.com/symbols: Symbols not found on symbol server. SYMSRV: BYINDEX: 0x22 c:\symbols*https://msdl.microsoft.com/download/symbols System.Runtime.pdb A11BAEED4C47491B80F6FB479B20A1E9ffffffff SYMSRV: UNC: c:\symbols\System.Runtime.pdb\A11BAEED4C47491B80F6FB479B20A1E9ffffffff\System.Runtime.pdb - path not found SYMSRV: UNC: c:\symbols\System.Runtime.pdb\A11BAEED4C47491B80F6FB479B20A1E9ffffffff\System.Runtime.pd_ - path not found SYMSRV: UNC: c:\symbols\System.Runtime.pdb\A11BAEED4C47491B80F6FB479B20A1E9ffffffff\file.ptr - path not found SYMSRV: HTTPGET: /download/symbols/System.Runtime.pdb/A11BAEED4C47491B80F6FB479B20A1E9ffffffff/System.Runtime.pdb SYMSRV: HttpQueryInfo: 801900c8 - HTTP_STATUS_OK SYMSRV: System.Runtime.pdb from https://msdl.microsoft.com/download/symbols: 820 bytes SYMSRV: PATH: c:\symbols\System.Runtime.pdb\A11BAEED4C47491B80F6FB479B20A1E9ffffffff\System.Runtime.pdb SYMSRV: RESULT: 0x00000000 https://msdl.microsoft.com/download/symbols: Symbols downloaded from symbol server. c:\symbols\System.Runtime.pdb\A11BAEED4C47491B80F6FB479B20A1E9ffffffff\System.Runtime.pdb: PDB does not match image. SYMSRV: BYINDEX: 0x23 c:\symbols*https://symbols.nuget.org/download/symbols System.Runtime.pdb A11BAEED4C47491B80F6FB479B20A1E9ffffffff SYMSRV: PATH: c:\symbols\System.Runtime.pdb\A11BAEED4C47491B80F6FB479B20A1E9ffffffff\System.Runtime.pdb SYMSRV: RESULT: 0x00000000 https://symbols.nuget.org/download/symbols: Symbols downloaded from symbol server. c:\symbols\System.Runtime.pdb\A11BAEED4C47491B80F6FB479B20A1E9ffffffff\System.Runtime.pdb: PDB does not match image. ```
Author: NN---
Assignees: vitek-karas
Labels: `area-Infrastructure-libraries`, `linkable-framework`
Milestone: 6.0.0
ViktorHofer commented 3 years ago

@vitek-karas should we keep this in 6.0 or move it out? Asking as you just recently filed an issue for it with the milestone set to 6.0: https://github.com/mono/linker/issues/2203.

vitek-karas commented 2 years ago

I spent some more time looking into this.

While the problem exists in all versions of the linker/.NET, this seems to be primarily .NET 5 problem. In .NET 5 the managed assemblies were built separately for x86 and x64. So for example the .NET 5 System.Runtime.dll for x86 is a 32bit PE image, while the one for x64 is a 64bit PE image. Otherwise the two file are identical, they only differ in the architecture bit in the PE header. (This is were the bug in the linker shows up).

On .NET 6+ the x86 and x64 builds of System.Runtime.dll are both 32bit PE images. Interestingly enough we seem to ship different binaries for x86 and x64, even though both are 32bit PE images. There are slight differences in the binary content of these files for the two architectures.

Also the symbol indexing seems to work for 6.0, debugging a simple app in VS correctly loads symbols for all assemblies (including System.Runtime.dll).

ericstj commented 2 years ago

Hi @vitek-karas. Did you identify any problems that we should fix? It sounds like you were able to confirm that 6.0 binaries in the runtime packs matched what's on the symbol server.

vitek-karas commented 2 years ago

There are definitely two separate issues in the linker/cecil.

It doesn't correctly consider all of the assembly when computing a hash (from which it derives the deterministic MVID) - and I was able to repro the problem on a simple example easily (assemblies which only differ by architecture in the PE header will get the same MVID after trimming -> bad).

And second it doesn't write the PdbChecksum entry into the output at all. This is a bit less important, but still would be really good to fix.

What I mentioned above is that it seems that these has much lower impact on .NET 6 than on .NET 5, but they still exist and should be fixed.

akoeplinger commented 2 years ago

On .NET 6+ the x86 and x64 builds of System.Runtime.dll are both 32bit PE images. Interestingly enough we seem to ship different binaries for x86 and x64, even though both are 32bit PE images. There are slight differences in the binary content of these files for the two architectures.

We should fix this too since Xamarin Android uses the MVID to deduplicate architecture-independent assemblies so we definitely want to make sure both builds are identical.

vitek-karas commented 2 years ago

Just update on what I found after digging into this for real.

Issue 1 - MVID is not 100% unique

This is the issue mentioned above. Cecil doesn't include the PE file headers into the MVID hash computation, it only uses data from the IL Metadata tables and blobs. This leads to facades having collisions on MVID as the IL side of the dll is identical. This should be fixed by hashing the entire dll with MVID all zeroed and then just patching the MVID from the computed hash as the last thing to be done on the dll (well except where there is strong name signing, but I don't think we use this in the framework).

Issue 2 - Cecil reuses MVID as PDB ID

Cecil uses the MVID in the PDB as the PDB ID. This is actually very problematic for the fix for Issue 1, especially if there are embedded PDBs. On its own this is not something which should necessarily break anything. But it makes the correct implementation basically impossible, so this will need to be changed.

Issue 3 - Cecil doesn't write PdbChecksum debug header entry

This causes NuGet to raise warnings (potentially) and should be fixed. This is only applicable to portable PDBs (Cecil also supports Windows Native PDBs and also MDB - mono symbols format), so the changes are not as big, unfortunately this will require changing the order in which things are done in Cecil -> potentially relatively risky change.

vitek-karas commented 2 years ago

The fix for this has been merged into mono/cecil and also into dotnet/linker/main. So this should be fixed in .NET 7 for sure. We're considering bringing the fix to .NET 6 servicing as well (the linker/SDK side of things). https://github.com/dotnet/linker/issues/2203

carlossanlop commented 2 years ago

@vitek-karas should we move this to 8.0?

agocke commented 2 years ago

I'm moving it to 6.0 actually, because this is now only tracking whether we take a backport to 6.0.

ghost commented 12 months ago

Tagging subscribers to this area: @vitek-karas, @agocke, @vsadov See info in area-owners.md if you want to be subscribed.

Issue Details
### Description There are no symbols for System.Runtime.dll on Microsoft Symbols Server: ``` C:\Program Files\dotnet\shared\Microsoft.NETCore.App\5.0.0\System.Runtime.pdb: Cannot find or open the PDB file. F:\workspace\_work\1\s\artifacts\obj\System.Runtime\net5.0-Release\System.Runtime.pdb: Cannot find or open the PDB file. C:\WINDOWS\System.Runtime.pdb: Cannot find or open the PDB file. C:\WINDOWS\symbols\dll\System.Runtime.pdb: Cannot find or open the PDB file. C:\WINDOWS\dll\System.Runtime.pdb: Cannot find or open the PDB file. c:\symbols\System.Runtime.pdb\a11baeed4c47491b80f6fb479b20a1e9ffffffff\System.Runtime.pdb: Cannot find or open the PDB file. c:\symbols\MicrosoftPublicSymbols\System.Runtime.pdb\a11baeed4c47491b80f6fb479b20a1e9ffffffff\System.Runtime.pdb: Cannot find or open the PDB file. c:\symbols\System.Runtime.pdb\a11baeed4c47491b80f6fb479b20a1e91\System.Runtime.pdb: Cannot find or open the PDB file. c:\symbols\MicrosoftPublicSymbols\System.Runtime.pdb\a11baeed4c47491b80f6fb479b20a1e91\System.Runtime.pdb: Cannot find or open the PDB file. SYMSRV: BYINDEX: 0x20 c:\symbols*https://referencesource.microsoft.com/symbols System.Runtime.pdb A11BAEED4C47491B80F6FB479B20A1E9ffffffff SYMSRV: UNC: c:\symbols\System.Runtime.pdb\A11BAEED4C47491B80F6FB479B20A1E9ffffffff\System.Runtime.pdb - path not found SYMSRV: UNC: c:\symbols\System.Runtime.pdb\A11BAEED4C47491B80F6FB479B20A1E9ffffffff\System.Runtime.pd_ - path not found SYMSRV: UNC: c:\symbols\System.Runtime.pdb\A11BAEED4C47491B80F6FB479B20A1E9ffffffff\file.ptr - path not found SYMSRV: HTTPGET: /symbols/System.Runtime.pdb/A11BAEED4C47491B80F6FB479B20A1E9ffffffff/System.Runtime.pdb SYMSRV: HttpQueryInfo: 80190194 - HTTP_STATUS_NOT_FOUND SYMSRV: HTTPGET: /symbols/System.Runtime.pdb/A11BAEED4C47491B80F6FB479B20A1E9ffffffff/System.Runtime.pd_ SYMSRV: HttpQueryInfo: 80190194 - HTTP_STATUS_NOT_FOUND SYMSRV: HTTPGET: /symbols/System.Runtime.pdb/A11BAEED4C47491B80F6FB479B20A1E9ffffffff/file.ptr SYMSRV: HttpQueryInfo: 80190194 - HTTP_STATUS_NOT_FOUND SYMSRV: RESULT: 0x80190194 SYMSRV: BYINDEX: 0x21 c:\symbols*https://referencesource.microsoft.com/symbols System.Runtime.pdb A11BAEED4C47491B80F6FB479B20A1E91 SYMSRV: UNC: c:\symbols\System.Runtime.pdb\A11BAEED4C47491B80F6FB479B20A1E91\System.Runtime.pdb - path not found SYMSRV: UNC: c:\symbols\System.Runtime.pdb\A11BAEED4C47491B80F6FB479B20A1E91\System.Runtime.pd_ - path not found SYMSRV: UNC: c:\symbols\System.Runtime.pdb\A11BAEED4C47491B80F6FB479B20A1E91\file.ptr - path not found SYMSRV: HTTPGET: /symbols/System.Runtime.pdb/A11BAEED4C47491B80F6FB479B20A1E91/System.Runtime.pdb SYMSRV: HttpQueryInfo: 80190194 - HTTP_STATUS_NOT_FOUND SYMSRV: HTTPGET: /symbols/System.Runtime.pdb/A11BAEED4C47491B80F6FB479B20A1E91/System.Runtime.pd_ SYMSRV: HttpQueryInfo: 80190194 - HTTP_STATUS_NOT_FOUND SYMSRV: HTTPGET: /symbols/System.Runtime.pdb/A11BAEED4C47491B80F6FB479B20A1E91/file.ptr SYMSRV: HttpQueryInfo: 80190194 - HTTP_STATUS_NOT_FOUND SYMSRV: RESULT: 0x80190194 https://referencesource.microsoft.com/symbols: Symbols not found on symbol server. SYMSRV: BYINDEX: 0x22 c:\symbols*https://msdl.microsoft.com/download/symbols System.Runtime.pdb A11BAEED4C47491B80F6FB479B20A1E9ffffffff SYMSRV: UNC: c:\symbols\System.Runtime.pdb\A11BAEED4C47491B80F6FB479B20A1E9ffffffff\System.Runtime.pdb - path not found SYMSRV: UNC: c:\symbols\System.Runtime.pdb\A11BAEED4C47491B80F6FB479B20A1E9ffffffff\System.Runtime.pd_ - path not found SYMSRV: UNC: c:\symbols\System.Runtime.pdb\A11BAEED4C47491B80F6FB479B20A1E9ffffffff\file.ptr - path not found SYMSRV: HTTPGET: /download/symbols/System.Runtime.pdb/A11BAEED4C47491B80F6FB479B20A1E9ffffffff/System.Runtime.pdb SYMSRV: HttpQueryInfo: 801900c8 - HTTP_STATUS_OK SYMSRV: System.Runtime.pdb from https://msdl.microsoft.com/download/symbols: 820 bytes SYMSRV: PATH: c:\symbols\System.Runtime.pdb\A11BAEED4C47491B80F6FB479B20A1E9ffffffff\System.Runtime.pdb SYMSRV: RESULT: 0x00000000 https://msdl.microsoft.com/download/symbols: Symbols downloaded from symbol server. c:\symbols\System.Runtime.pdb\A11BAEED4C47491B80F6FB479B20A1E9ffffffff\System.Runtime.pdb: PDB does not match image. SYMSRV: BYINDEX: 0x23 c:\symbols*https://symbols.nuget.org/download/symbols System.Runtime.pdb A11BAEED4C47491B80F6FB479B20A1E9ffffffff SYMSRV: PATH: c:\symbols\System.Runtime.pdb\A11BAEED4C47491B80F6FB479B20A1E9ffffffff\System.Runtime.pdb SYMSRV: RESULT: 0x00000000 https://symbols.nuget.org/download/symbols: Symbols downloaded from symbol server. c:\symbols\System.Runtime.pdb\A11BAEED4C47491B80F6FB479B20A1E9ffffffff\System.Runtime.pdb: PDB does not match image. ```
Author: NN---
Assignees: vitek-karas
Labels: `area-Host`, `linkable-framework`
Milestone: 6.0.x
ghost commented 12 months ago

Tagging subscribers to this area: @agocke, @sbomer, @vitek-karas See info in area-owners.md if you want to be subscribed.

Issue Details
### Description There are no symbols for System.Runtime.dll on Microsoft Symbols Server: ``` C:\Program Files\dotnet\shared\Microsoft.NETCore.App\5.0.0\System.Runtime.pdb: Cannot find or open the PDB file. F:\workspace\_work\1\s\artifacts\obj\System.Runtime\net5.0-Release\System.Runtime.pdb: Cannot find or open the PDB file. C:\WINDOWS\System.Runtime.pdb: Cannot find or open the PDB file. C:\WINDOWS\symbols\dll\System.Runtime.pdb: Cannot find or open the PDB file. C:\WINDOWS\dll\System.Runtime.pdb: Cannot find or open the PDB file. c:\symbols\System.Runtime.pdb\a11baeed4c47491b80f6fb479b20a1e9ffffffff\System.Runtime.pdb: Cannot find or open the PDB file. c:\symbols\MicrosoftPublicSymbols\System.Runtime.pdb\a11baeed4c47491b80f6fb479b20a1e9ffffffff\System.Runtime.pdb: Cannot find or open the PDB file. c:\symbols\System.Runtime.pdb\a11baeed4c47491b80f6fb479b20a1e91\System.Runtime.pdb: Cannot find or open the PDB file. c:\symbols\MicrosoftPublicSymbols\System.Runtime.pdb\a11baeed4c47491b80f6fb479b20a1e91\System.Runtime.pdb: Cannot find or open the PDB file. SYMSRV: BYINDEX: 0x20 c:\symbols*https://referencesource.microsoft.com/symbols System.Runtime.pdb A11BAEED4C47491B80F6FB479B20A1E9ffffffff SYMSRV: UNC: c:\symbols\System.Runtime.pdb\A11BAEED4C47491B80F6FB479B20A1E9ffffffff\System.Runtime.pdb - path not found SYMSRV: UNC: c:\symbols\System.Runtime.pdb\A11BAEED4C47491B80F6FB479B20A1E9ffffffff\System.Runtime.pd_ - path not found SYMSRV: UNC: c:\symbols\System.Runtime.pdb\A11BAEED4C47491B80F6FB479B20A1E9ffffffff\file.ptr - path not found SYMSRV: HTTPGET: /symbols/System.Runtime.pdb/A11BAEED4C47491B80F6FB479B20A1E9ffffffff/System.Runtime.pdb SYMSRV: HttpQueryInfo: 80190194 - HTTP_STATUS_NOT_FOUND SYMSRV: HTTPGET: /symbols/System.Runtime.pdb/A11BAEED4C47491B80F6FB479B20A1E9ffffffff/System.Runtime.pd_ SYMSRV: HttpQueryInfo: 80190194 - HTTP_STATUS_NOT_FOUND SYMSRV: HTTPGET: /symbols/System.Runtime.pdb/A11BAEED4C47491B80F6FB479B20A1E9ffffffff/file.ptr SYMSRV: HttpQueryInfo: 80190194 - HTTP_STATUS_NOT_FOUND SYMSRV: RESULT: 0x80190194 SYMSRV: BYINDEX: 0x21 c:\symbols*https://referencesource.microsoft.com/symbols System.Runtime.pdb A11BAEED4C47491B80F6FB479B20A1E91 SYMSRV: UNC: c:\symbols\System.Runtime.pdb\A11BAEED4C47491B80F6FB479B20A1E91\System.Runtime.pdb - path not found SYMSRV: UNC: c:\symbols\System.Runtime.pdb\A11BAEED4C47491B80F6FB479B20A1E91\System.Runtime.pd_ - path not found SYMSRV: UNC: c:\symbols\System.Runtime.pdb\A11BAEED4C47491B80F6FB479B20A1E91\file.ptr - path not found SYMSRV: HTTPGET: /symbols/System.Runtime.pdb/A11BAEED4C47491B80F6FB479B20A1E91/System.Runtime.pdb SYMSRV: HttpQueryInfo: 80190194 - HTTP_STATUS_NOT_FOUND SYMSRV: HTTPGET: /symbols/System.Runtime.pdb/A11BAEED4C47491B80F6FB479B20A1E91/System.Runtime.pd_ SYMSRV: HttpQueryInfo: 80190194 - HTTP_STATUS_NOT_FOUND SYMSRV: HTTPGET: /symbols/System.Runtime.pdb/A11BAEED4C47491B80F6FB479B20A1E91/file.ptr SYMSRV: HttpQueryInfo: 80190194 - HTTP_STATUS_NOT_FOUND SYMSRV: RESULT: 0x80190194 https://referencesource.microsoft.com/symbols: Symbols not found on symbol server. SYMSRV: BYINDEX: 0x22 c:\symbols*https://msdl.microsoft.com/download/symbols System.Runtime.pdb A11BAEED4C47491B80F6FB479B20A1E9ffffffff SYMSRV: UNC: c:\symbols\System.Runtime.pdb\A11BAEED4C47491B80F6FB479B20A1E9ffffffff\System.Runtime.pdb - path not found SYMSRV: UNC: c:\symbols\System.Runtime.pdb\A11BAEED4C47491B80F6FB479B20A1E9ffffffff\System.Runtime.pd_ - path not found SYMSRV: UNC: c:\symbols\System.Runtime.pdb\A11BAEED4C47491B80F6FB479B20A1E9ffffffff\file.ptr - path not found SYMSRV: HTTPGET: /download/symbols/System.Runtime.pdb/A11BAEED4C47491B80F6FB479B20A1E9ffffffff/System.Runtime.pdb SYMSRV: HttpQueryInfo: 801900c8 - HTTP_STATUS_OK SYMSRV: System.Runtime.pdb from https://msdl.microsoft.com/download/symbols: 820 bytes SYMSRV: PATH: c:\symbols\System.Runtime.pdb\A11BAEED4C47491B80F6FB479B20A1E9ffffffff\System.Runtime.pdb SYMSRV: RESULT: 0x00000000 https://msdl.microsoft.com/download/symbols: Symbols downloaded from symbol server. c:\symbols\System.Runtime.pdb\A11BAEED4C47491B80F6FB479B20A1E9ffffffff\System.Runtime.pdb: PDB does not match image. SYMSRV: BYINDEX: 0x23 c:\symbols*https://symbols.nuget.org/download/symbols System.Runtime.pdb A11BAEED4C47491B80F6FB479B20A1E9ffffffff SYMSRV: PATH: c:\symbols\System.Runtime.pdb\A11BAEED4C47491B80F6FB479B20A1E9ffffffff\System.Runtime.pdb SYMSRV: RESULT: 0x00000000 https://symbols.nuget.org/download/symbols: Symbols downloaded from symbol server. c:\symbols\System.Runtime.pdb\A11BAEED4C47491B80F6FB479B20A1E9ffffffff\System.Runtime.pdb: PDB does not match image. ```
Author: NN---
Assignees: vitek-karas
Labels: `linkable-framework`, `area-Tools-ILLink`
Milestone: 6.0.x