This is the mail archive of the
libc-alpha@sourceware.org
mailing list for the glibc project.
Re: Documenting the (dynamic) linking rules for symbol versioning
- From: Torvald Riegel <triegel at redhat dot com>
- To: "Michael Kerrisk (man-pages)" <mtk dot manpages at gmail dot com>
- Cc: "libc-alpha at sourceware dot org" <libc-alpha at sourceware dot org>, linux-man <linux-man at vger dot kernel dot org>, Siddhesh Poyarekar <siddhesh at sourceware dot org>, Carlos O'Donell <carlos at redhat dot com>, Rich Felker <dalias at aerifal dot cx>, "H.J. Lu" <hjl dot tools at gmail dot com>
- Date: Wed, 26 Apr 2017 21:57:39 +0200
- Subject: Re: Documenting the (dynamic) linking rules for symbol versioning
- Authentication-results: sourceware.org; auth=none
- Authentication-results: ext-mx05.extmail.prod.ext.phx2.redhat.com; dmarc=none (p=none dis=none) header.from=redhat.com
- Authentication-results: ext-mx05.extmail.prod.ext.phx2.redhat.com; spf=pass smtp.mailfrom=triegel at redhat dot com
- Dkim-filter: OpenDKIM Filter v2.11.0 mx1.redhat.com DE81C46D0A6
- Dmarc-filter: OpenDMARC Filter v1.3.2 mx1.redhat.com DE81C46D0A6
- References: <b3a962de-6703-d8b9-18f7-138185171475@gmail.com>
On Wed, 2017-04-19 at 17:07 +0200, Michael Kerrisk (man-pages) wrote:
> The documentation around symbol versioning as used by the glibc dynamic
> linker (DL) is currently rather weak, and I'd like to add some pieces to
> various man pages (ld.so(8), dlsym(3), and possibly others) to improve
> this situation. Before that though, I'd rather like to check my
> understanding of the rules.
I can't comment on the specific questions you have, but I'd suggest to
reach out to Stephen Kell and Peter Sewell, as they have worked on
rigorous specifications of linking:
http://www.cl.cam.ac.uk/~pes20/rems/papers/oopsla-elf-linking-2016.pdf
That's static linking of course, but perhaps they'd be interested to
extend that work (or perhaps are already looking at this).
Sewell et al. have worked on rigorous specifications of memory models in
the past (eg, for C++), and those are *really* useful in practice.