[patch rfc]: use xxhash() in ld build-id computation, incl. benchmark

Frank Ch. Eigler fche@redhat.com
Wed Sep 18 13:59:11 GMT 2024


Hi -

> > I'm not sure I see why.  Build-ids for any given binary may be
> > computed or set any way at all, independent of other binaries or the
> > rest of the ecosystem.

> I don't think that is really true. The way and the "strength" of the
> build-id calculation matter.  This is only true if the way the
> build-id is calculated is really reproducible, has strong collission
> resistance properties and nothing depends on the way the build-id is
> calculated.

Sure, depending on which "ecosystem".  Some don't care about
reproducible buildids, some have few enough builds that they don't
care about strong collision resistance.  There is no "the" ecosystem.
The buildid-related tools will accept anything and work within each
ecosystem.


> [...]  I would say if the speedup is really as much as you say then
> just make this the default [...]

Maybe, though defaulting (within binutils or within distros) is a
separate followup question.

I'd want to do one more test before merging the initial enabling work.
Namely, I'd try to recompute xx-style buildids for a large number of
binaries, just to confirm collision resistance.  This assumes that
there's interest in the binutils community for xx.

> But it would be good to document these calculations somewhere so we
> are really sure 128 bits are enough for any binary.

At the depth of the investigation, this would take only a paragraph. :)


- FChE



More information about the Binutils mailing list