From: Rich Felker <dalias@libc.org>
To: musl@lists.openwall.com
Subject: Re: (OT?) Re: [musl] Symbol versioning approximation trips on compat symbols
Date: Mon, 28 Jan 2019 10:29:12 -0500 [thread overview]
Message-ID: <20190128152912.GB23599@brightrain.aerifal.cx> (raw)
In-Reply-To: <20190128130813.GC30123@example.net>
On Mon, Jan 28, 2019 at 02:08:13PM +0100, u-uy74@aetey.se wrote:
> On Mon, Jan 28, 2019 at 07:34:25AM +0100, Florian Weimer wrote:
> > * u-uy:
> >
> > > On Sat, Jan 26, 2019 at 11:04:24PM -0500, Rich Felker wrote:
> > >> For what it's worth, compat symbols would have let us remove symbols
> > >> that shouldn't have been put in musl, such as lchmod (which confuses
> > >> broken apps which wrongly expect that, if it exists, it should work)
> > >
> > > For what my integrator perspective is worth, exposing brokenness instead
> > > of catering for it is a Good Thing.
>
> > So far, no one has presented a compelling way how to test for symbol
> > versioning support.
>
> My comment apparently fell out of context. Sorry for that.
>
> It was about applications who make undue assumptions (and as a consequence
> use misdirected tests). Exposing the failures of those assumptions is
> vital to be able to make it better.
>
> If there is a feature which is hard or impossible to test for, like
> symbol versioning, it means that the applications may _have_ to rely on
> an explicit build flag telling whether to use it.
>
> IOW it is for the most part not a technical problem but rather a problem
> of awareness among application developers.
It wouldn't be hard to test for if toolchains had been consistent with
musl capabilities all along. They have not been. So we have a
situation where the valid build-time tests indicate support, but
runtime silently lacks it. I don't think this is a good situation to
have created, and it's not fixable by telling the toolchains "no, we
don't actually have that" because there are and will be deployed
toolchains that don't know/honor that for a long time.
Fortunately, it mostly doesn't matter since the main intended usage
for versioning is to link to the current/default version symbols,
assuming your apps are all up-to-date with respect to your libs (and
libs wrt each other). But I still think honoring version bindings in
ldso is the right course of action.
Rich
next prev parent reply other threads:[~2019-01-28 15:29 UTC|newest]
Thread overview: 26+ messages / expand[flat|nested] mbox.gz Atom feed top
2019-01-21 17:57 Florian Weimer
2019-01-24 1:43 ` Rich Felker
2019-01-24 9:28 ` u-uy74
2019-01-24 10:11 ` Florian Weimer
2019-01-24 11:09 ` Szabolcs Nagy
2019-01-24 11:18 ` Florian Weimer
2019-01-27 4:04 ` Rich Felker
2019-01-27 9:36 ` u-uy74
2019-01-28 6:34 ` Florian Weimer
2019-01-28 9:17 ` Timo Teras
2019-01-28 11:33 ` Szabolcs Nagy
2019-01-28 12:40 ` Szabolcs Nagy
2019-01-28 13:08 ` (OT?) Re: [musl] " u-uy74
2019-01-28 15:22 ` Markus Wichmann
2019-01-28 15:34 ` Rich Felker
2019-01-28 15:29 ` Rich Felker [this message]
2019-01-29 17:13 ` u-uy74
2019-01-30 14:57 ` Rich Felker
2019-01-28 21:57 ` A. Wilcox
2019-01-28 22:52 ` Matias Fonzo
2019-01-28 23:12 ` Zach van Rijn
2019-01-28 23:41 ` A. Wilcox
2019-01-28 23:47 ` Rich Felker
2019-01-29 3:22 ` A. Wilcox
2019-01-29 19:40 ` Matias Fonzo
2019-01-29 19:31 ` Matias Fonzo
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=20190128152912.GB23599@brightrain.aerifal.cx \
--to=dalias@libc.org \
--cc=musl@lists.openwall.com \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
Code repositories for project(s) associated with this public inbox
https://git.vuxu.org/mirror/musl/
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).