This is the mail archive of the mailing list for the glibc project.

Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

Re: [PATCH] Avoid concurrency problem in ldconfig (bug 23973)

On Apr 18 2019, Florian Weimer <> wrote:

> * Andreas Schwab:
>> On Apr 18 2019, Florian Weimer <> wrote:
>>> * Andreas Schwab:
>>>> Use a unique name for the temporary file when updating the cache, so
>>>> that two concurrent runs of ldconfig don't write to the same file.
>>>> 	* elf/cache.c (save_cache): Use unique temporary name.
>>>> 	(save_aux_cache): Likewise.
>>> The downside of this change is that if ldconfig is interrupted, the
>>> temporary file never goes away.
>>> Ideally, we would use O_TMPFILE if supported by the (file) system, but
>>> that can get quite involved.
>> That shortens the window, but won't close it, since we need a name to
>> pass to rename in any case.
> The difference is that with a fixed name, the next ldconfig run will use
> the same name and rename, cleaning up.  With a random, unique name, that
> automatic cleanup is gone.

O_TMPFILE won't change that.


Andreas Schwab, SUSE Labs,
GPG Key fingerprint = 0196 BAD8 1CE9 1970 F4BE  1748 E4D4 88E3 0EEA B9D7
"And now for something completely different."

Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]