[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

Bug#374945: ldconfig: please add an argument to specify files to update



Package: libc6
Version: 2.3.6-15
Severity: normal

Please see debian bug 72140 for background info, and in particular,
this message:
---
> From: Henrique M Holschuh <hmh+debianbug@rcm.org.br>
> Subject: Re: Bug#72140: Setting up libraries too slow
> Date: Thu, 21 Sep 2000 10:40:20 -0300
> 
> > On Thu, 21 Sep 2000, Nicols Lichtmaier wrote:
> > >  Couldn't ldconfig be enhanced to act only on command-line given libraries?
> > 
> > The only point in running ldconfig today is to update the symlinks, which
> > could also be done by a few "ln"s in "if" statements. I think there should
> > be an update-lib-symlinks(8) that handles installation and removal of
> > libraries.
> 
> What about ld.so's cache? Isn't ldconfig the one responsible to keep that
> thing up-to-date?
> 
> One should profile ldconfig and see exactly what takes so much time.
> Building the symlink trees? Reading the directory tree (ext2 is a $#%@#$ for
> directories with many files)? Reading the information for the cache file?
> Something else?  I don't see the point of building a strategy to try to
> minimize a problem which isn't determined exactly.
---

ldconfig is called in very large amount of package dpkg postinst
scripts.  These take many minutes to run per package on older systems,
and a system upgrade is painfully slow unless one moves /sbin/ldconfig
out of the way (since it appears completely unnecessary in all usage I
have encountered to date) and symlink to /bin/true.  It really
shouldn't be taking that long, and that thread mentions adding an
argument to ldconfig to get it to only update the files in question,
rather than updating the symlinks and cache for *everything* that
appears in all the lib directories.  In the case of the cache, you
don't need to look at the existance and location of every library on
the sytem, just assume they are correct from the entries already in
the cache -- only add and modify those from the arguments supplied.

Since the dpkg and necessary policy changes don't look like they are
going to happen any time soon (I've been eagerly awaiting a proper
solution to this bug for 6 years), could the libc maintainers think
about adding this argument to ldconfig?

Thanks.


-- System Information:
Debian Release: testing/unstable
  APT prefers unstable
  APT policy: (500, 'unstable'), (500, 'testing'), (500, 'stable')
Architecture: i386 (i686)
Shell:  /bin/sh linked to /bin/bash
Kernel: Linux 2.6.15.1
Locale: LANG=en_AU, LC_CTYPE=en_AU (charmap=ISO-8859-1)

Versions of packages libc6 depends on:
ii  tzdata                        2006g-1    Time Zone and Daylight Saving Time

libc6 recommends no packages.

-- no debconf information



Reply to: