[Bug 1387594] [NEW] init: symbol lookup error: /lib/powerpc64le-linux-gnu/libnss_ldap.so.2: undefined symbol: __libc_lock_lock

Launchpad Bug Tracker 1387594 at bugs.launchpad.net
Tue Dec 9 14:47:04 UTC 2014


You have been subscribed to a public bug by Louis Bouchard (louis-bouchard):

[SRU justification]
The version of the library in the archive for Utopic and Trusty has been built prior to a change in glibc that removes an expected symbol. Rebuild of the libnss-ldap library with the current source package will render the library unusable and may cause systems to become unbootable.

[Impact]
Without this fix, a rebuild of the libnss-ldap package will cause grave impact where usage of the libnss-ldap will segfault. Such a segfault during the boot process will cause the system to become unbootable.

[Fix]
Backport the glibc-2.16.patch that is now merged in Vivid into Utopic and Trusty. The version of the library in Precise already uses the correct glibc symbol.

[Test Case]
$ sudo apt-get download libnss-ldap
$ mkdir tmp
$ dpkg -x libnss-ldap_264-2.2ubuntu4_amd64.deb tmp
$ nm -D tmp/lib/x86_64-linux-gnu/libnss_ldap-2.15.so |grep lock$
                 w __pthread_mutex_lock
                 w __pthread_mutex_unlock
#Rebuild the library
$ pull-lp-source libnss-ldap trusty
$ sbuild -A -d trusty libnss-ldap_264-2.2ubuntu4.dsc
$ rm -Rf tmp/*
$ dpkg -x libnss-ldap_264-2.2ubuntu4_amd64.deb tmp
$ nm -D tmp/lib/x86_64-linux-gnu/libnss_ldap-2.19.so | grep lock$
                 U __libc_lock_lock
                 U __libc_lock_unlock

Notice that the libnss-ldap version change (2.15 -> 2.19). With the
newly built version, the expected _pthread_mutex_lock|unlock is no
longer present.

[Regression]
None expected. This is already present and in use in the upstream version of the library.

[Original Description of the problem]

Unlike previously thought, this bug is _NOT_ specific to the PPC64EL
architecture. More details in the analysis.

Many commands that require the use of libnss-ldap will fail with
Segmentation Fault. The boot procedure itself can be blocked with the
following message.

One potential workaround is to remove the use of ldap from the
/etc/nsswitch.conf file to at least provide a bootable system.

** Affects: libnss-ldap (Ubuntu)
     Importance: Critical
         Status: Fix Released

** Affects: libnss-ldap (Ubuntu Precise)
     Importance: Critical
         Status: Invalid

** Affects: libnss-ldap (Ubuntu Trusty)
     Importance: Critical
     Assignee: Louis Bouchard (louis-bouchard)
         Status: In Progress

** Affects: libnss-ldap (Ubuntu Utopic)
     Importance: Critical
     Assignee: Louis Bouchard (louis-bouchard)
         Status: In Progress


** Tags: cts
-- 
init: symbol lookup error: /lib/powerpc64le-linux-gnu/libnss_ldap.so.2: undefined symbol: __libc_lock_lock
https://bugs.launchpad.net/bugs/1387594
You received this bug notification because you are a member of Ubuntu Sponsors Team, which is subscribed to the bug report.



More information about the Ubuntu-sponsors mailing list