[Dwarf-Discuss] Support for SourceLink in DWARF

2022-05-04 Thread Eugene Rozenfeld via Dwarf-Discuss
Hello,

I work on the Linux tools team at Microsoft and I'd like to comment on the 
issue  https://dwarfstd.org/ShowIssue.php?issue=181223.1 that proposes to add 
info similar to SourceLink to the DWARF format.
We are interested in pushing this forward both as a developer experience 
improvement and as a step in improving secure supply chain guarantees. It's 
important to be able to figure out where the sources come from if we want to 
check the binary integrity.

The issue discusses two approaches: one involves augmenting the DWARF format 
and the other one relies on buildid's and debuginfod servers. We believe the 
approach whereby an arbitrary URL for source retrieval (e.g., github, VSTS, 
etc.) can be specified offers greater applicability and flexibility over 
relying on buildid and debuginfod servers. For instance, it can accommodate 
scenarios where storing debuginfo along with sources on a debuginfod server may 
not always be feasible.

The issue discusses two approaches to modifying the  DWARF format: one is 
augmenting the existing file table to allow the specification of a URL (the 
proposed resolution) and the other one is a per CU URL table that would allow 
the equivalent of SourceLink wildcards. The tradeoff is simplicity vs. 
potential DWARF file size saving if many source files are involved in the 
compilation. We are ok with either resolution. The important thing is a 
standard way to encode the source file information so that the producers and 
consumers agree.

Thank you,

Eugene

___
Dwarf-Discuss mailing list
Dwarf-Discuss@lists.dwarfstd.org
http://lists.dwarfstd.org/listinfo.cgi/dwarf-discuss-dwarfstd.org


Re: [Dwarf-Discuss] [EXTERNAL] Re: Support for SourceLink in DWARF

2022-05-05 Thread Eugene Rozenfeld via Dwarf-Discuss
Hi Michael and Tony,

The github reference for SourceLink has both the schema for the json file 
(https://github.com/dotnet/designs/blob/main/accepted/2020/diagnostics/source-link.md#source-link-json-schema)
 and several examples of the info contained there 
(https://github.com/dotnet/designs/blob/main/accepted/2020/diagnostics/source-link.md#examples).
 Please let me know what needs to be clarified and I'll be happy to provide 
additional information.

Thanks,

Eugene

-Original Message-
From: Dwarf-Discuss  On Behalf Of 
Michael Eager via Dwarf-Discuss
Sent: Wednesday, May 04, 2022 7:14 PM
To: Eugene Rozenfeld ; 
dwarf-discuss@lists.dwarfstd.org
Subject: [EXTERNAL] Re: [Dwarf-Discuss] Support for SourceLink in DWARF

Hi Eugene --

Please work with Tony Tye (cc'ed), the champion on this issue, to draft a more 
complete proposal.  Much of the description on the Github reference for 
SourceLink is about the implementation in a PDB file and less about the what 
information is contained and how it is used.

On 5/4/22 18:54, Eugene Rozenfeld via Dwarf-Discuss wrote:
> Hello,
> 
> I work on the Linux tools team at Microsoft and I'd like to comment on the 
> issue  
> https://nam06.safelinks.protection.outlook.com/?url=https%3A%2F%2Fdwarfstd.org%2FShowIssue.php%3Fissue%3D181223.1&data=05%7C01%7CEugene.Rozenfeld%40microsoft.com%7Ce2f2311ad7b6419653ad08da2e3cfb99%7C72f988bf86f141af91ab2d7cd011db47%7C1%7C0%7C637873136819887860%7CUnknown%7CTWFpbGZsb3d8eyJWIjoiMC4wLjAwMDAiLCJQIjoiV2luMzIiLCJBTiI6Ik1haWwiLCJXVCI6Mn0%3D%7C3000%7C%7C%7C&sdata=vhy1WMTrcJzYM%2F4HRnaq5D1xzPMxfpyqIK%2FZ182%2F%2Fqk%3D&reserved=0
>  that proposes to add info similar to SourceLink to the DWARF format.
> We are interested in pushing this forward both as a developer experience 
> improvement and as a step in improving secure supply chain guarantees. It's 
> important to be able to figure out where the sources come from if we want to 
> check the binary integrity.
> 
> The issue discusses two approaches: one involves augmenting the DWARF format 
> and the other one relies on buildid's and debuginfod servers. We believe the 
> approach whereby an arbitrary URL for source retrieval (e.g., github, VSTS, 
> etc.) can be specified offers greater applicability and flexibility over 
> relying on buildid and debuginfod servers. For instance, it can accommodate 
> scenarios where storing debuginfo along with sources on a debuginfod server 
> may not always be feasible.
> 
> The issue discusses two approaches to modifying the  DWARF format: one is 
> augmenting the existing file table to allow the specification of a URL (the 
> proposed resolution) and the other one is a per CU URL table that would allow 
> the equivalent of SourceLink wildcards. The tradeoff is simplicity vs. 
> potential DWARF file size saving if many source files are involved in the 
> compilation. We are ok with either resolution. The important thing is a 
> standard way to encode the source file information so that the producers and 
> consumers agree.
> 
> Thank you,
> 
> Eugene
> 
> ___
> Dwarf-Discuss mailing list
> Dwarf-Discuss@lists.dwarfstd.org
> https://nam06.safelinks.protection.outlook.com/?url=http%3A%2F%2Flists
> .dwarfstd.org%2Flistinfo.cgi%2Fdwarf-discuss-dwarfstd.org&data=05%
> 7C01%7CEugene.Rozenfeld%40microsoft.com%7Ce2f2311ad7b6419653ad08da2e3c
> fb99%7C72f988bf86f141af91ab2d7cd011db47%7C1%7C0%7C637873136819887860%7
> CUnknown%7CTWFpbGZsb3d8eyJWIjoiMC4wLjAwMDAiLCJQIjoiV2luMzIiLCJBTiI6Ik1
> haWwiLCJXVCI6Mn0%3D%7C3000%7C%7C%7C&sdata=O%2FOoUs%2BdLeybBIIprxna
> ahOeKGwfQOkJt7lONyE%2BDLw%3D&reserved=0
> 


--
Michael Eager
___
Dwarf-Discuss mailing list
Dwarf-Discuss@lists.dwarfstd.org
https://nam06.safelinks.protection.outlook.com/?url=http%3A%2F%2Flists.dwarfstd.org%2Flistinfo.cgi%2Fdwarf-discuss-dwarfstd.org&data=05%7C01%7CEugene.Rozenfeld%40microsoft.com%7Ce2f2311ad7b6419653ad08da2e3cfb99%7C72f988bf86f141af91ab2d7cd011db47%7C1%7C0%7C637873136819887860%7CUnknown%7CTWFpbGZsb3d8eyJWIjoiMC4wLjAwMDAiLCJQIjoiV2luMzIiLCJBTiI6Ik1haWwiLCJXVCI6Mn0%3D%7C3000%7C%7C%7C&sdata=O%2FOoUs%2BdLeybBIIprxnaahOeKGwfQOkJt7lONyE%2BDLw%3D&reserved=0
___
Dwarf-Discuss mailing list
Dwarf-Discuss@lists.dwarfstd.org
http://lists.dwarfstd.org/listinfo.cgi/dwarf-discuss-dwarfstd.org