Red Hat Bugzilla – Bug 164607
chroot command fails with error from dynamic loader
Last modified: 2007-11-30 17:11:10 EST
From Bugzilla Helper:
User-Agent: Mozilla/5.0 (X11; U; Linux i686; en-US; rv:1.7.10) Gecko/20050720 Fedora/1.0.6-1.1.fc3 Firefox/1.0.6
Description of problem:
Running chroot(1) generates an error from the loader:
# chroot /VS/lfs
Inconsistency detected by ld.so: rtld.c: 1221: dl_main: Assertion `pt_load_num || (void *) ph->p_vaddr == _rtld_local._dl_sysinfo_dso' failed!
Version-Release number of selected component (if applicable):
Steps to Reproduce:
1.No special steps required. Just try to chroot to an existing directory
Actual Results: Error message displayed
Expected Results: Change to new root directory
The system is completely up to date with all packages installed via up2date and no custom compilation.
# uname -a
Linux slab 2.6.12-1.1372_FC3 #1 Fri Jul 15 00:59:10 EDT 2005 i686 i686 i386 GNU/Linux
The chroot is actually part of a script that sets various environment variables and was last known to have worked on July 15th, however executing chroot from the command bash line (as above) generates the same error.
What glibc is installed in the chroot jail?
I very much doubt it is Fedora Core or RHEL glibc, for the following reason:
1) FC and RHEL glibc rpms are all built with -DNDEBUG=1, so assert is a nop,
while you are triggering an assert in the code
2) pt_load_num is something that has lived in rtld.c from 2003-12-10 till
2004-02-26, but FC3 original glibc is 2004-10-21 snapshot.
Yes, it is a bug, but a bug in whatever glibc you are using in the chroot.
Therefore complain to the distro from which it originates.
You can work around this problem by booting with the option vdso=0 (see