This is the mail archive of the
mailing list for the glibc project.
Re: [PATCH] Fix DSTs with static applications (Bug 23462).
- From: Carlos O'Donell <carlos at redhat dot com>
- To: GNU C Library <libc-alpha at sourceware dot org>
- Date: Thu, 2 Aug 2018 15:13:44 -0400
- Subject: Re: [PATCH] Fix DSTs with static applications (Bug 23462).
- References: <firstname.lastname@example.org>
On 07/27/2018 09:50 PM, Carlos O'Donell wrote:
> After commit d1d5471579eb0426671bf94f2d71e61dfb204c30 we no longer check
> to see if the link map passed to DL_DST_REQUIRED is NULL or not. This
> is a problem becuase in _dl_init_paths we do not set the link map to
> anything in the !SHARED case, and this is a bug. With the work done to
> setup link maps in both static and shared builds we can always rely on
> the link map. The fix is to always set the link map, and assert that it
> is not NULL. Setting the link map allows the use of _dl_main_map link
> map to be used and results in DSTs being correctly processed. We add
> one regression test tst-dst-static.c just to look for the crash, but we
> need to add a larger set of tests for DSTs, but as noted in the DST
> cleanup changes this needs the test-in-container framework to go in
> No regressions on x86_64.
> Signed-off-by: Carlos O'Donell <email@example.com>
> OK for 2.29 when it opens? I don't want to touch 2.28 with this change,
> and it's a long standing bug. I'd like to test this change out in Fedora
> Rawhide for a while to make sure I didn't miss anything.
I'm going to commit this on Friday is nobody objects. It's the cleanest
and most straight forward solution for this problem.