Re: [PATCH v3] elf: Release dl_load_lock before running dlopen constructors (BZ 15686)

Mikhail Novosyolov <[email protected]>
Newsgroups gmane.comp.lib.glibc.alpha
Message-ID <[email protected]>
21.07.2026 14:03, Artem Proskurnev пишет:
> 21.07.2026 13:33, Florian Weimer:
>> * Artem Proskurnev:
>>
>>> On the first two points, I think the framing is too narrow.
>> The current patch is not backportable.  It's not clear if a future
>> version, with more safeguards to preserve compatible behavior, will be
>> backportable.  Would a fix in glibc 2.45 and future versions really
>> solve the problem for you?
>>
> Two questions bundled here, with different answers.
>
> == "Is the current patch backportable?"
>
> https://abf.io/import/glibc/blob/rosa2023.1/glibc-elf-Release-dl_load_lock-before-running-dlopen-const.patch
>
> https://abf.io/import/glibc/blob/rosa2023.1/glibc.spec#lc-123
>
> In practice, yes.  ROSA is carrying v3 on top of glibc 2.40 in
> our downstream tree right now -- the build that Mikhail Novosyolov
> confirmed fixes ROSA bug 21031 (Codeblocks startup).  The patch
> applies, the test suite passes modulo the pre-existing
> environmental failures, and the reproducer stops deadlocking. 
<...>
>
> == "Would a fix in 2.45 solve the problem for you?"
>
> For ROSA's immediate deployment, the backport above already
> solves it.  We are not blocked on upstream acceptance for our own
> users.  Upstream acceptance in 2.45 would solve three problems
> the backport does not:
>
> 1. Every glibc upgrade stops requiring us to rebase the patch.
>    Right now ROSA owns this fix for as long as we ship a glibc
>    derived from 2.40, and rebasing is real work each cycle.
>
> 2. Distributions without a glibc maintainer who can carry v3
>    get the fix.  Right now every distro that ships glycin
>    alongside recent gdk-pixbuf has the same regression and no
>    path to a fix short of writing their own patch or waiting for
>    upstream.  Most distros are in that second category.
>
> 3. The fix tracks changes in the loader as glibc evolves.  The
>    dl_load_lock surface is not frozen -- BZ 28357 already
>    reshaped parts of it, and more changes will come.  A fix in
>    main has a chance to be maintained; a ROSA-only patch does
>    not, and will eventually rot until the regression resurfaces
>    in our next major rebuild.
>
> If the project's answer is "this never lands upstream, distros
> handle it", I can live with that.  We have a working backport and
> we will carry it.  But that answer costs every other distro the
> same work, and it costs ROSA the maintenance burden for as long
> as we ship.  The reason I am pushing for upstream is to share
> that burden, not because the backport does not work. 

For us (Artem and me), as a distro, it is not a problem to carry a backport in an older version, where we need it.

It is up to you to decide if this has to be backported to release/2.4x/master or not.
I think here, due to potential regressions, better avoid a backport.
lmpx.com only provides a reader for public news (NNTP) servers. It is not affiliated with the servers or forums shown here and is not responsible for the content of articles, which is written by their respective authors.