Bug 229622 - yum install ltrace selects no file descriptors
Summary: yum install ltrace selects no file descriptors
Keywords:
Status: CLOSED DUPLICATE of bug 213963
Alias: None
Product: Fedora
Classification: Fedora
Component: rpm
Version: 5
Hardware: All
OS: Linux
medium
medium
Target Milestone: ---
Assignee: Paul Nasrat
QA Contact:
URL:
Whiteboard:
Depends On:
Blocks:
TreeView+ depends on / blocked
 
Reported: 2007-02-22 07:10 UTC by Kasper Dupont
Modified: 2014-01-21 22:57 UTC (History)
0 users

Fixed In Version:
Clone Of:
Environment:
Last Closed: 2007-08-09 19:47:41 UTC
Type: ---
Embargoed:


Attachments (Terms of Use)
strace of another run of yum (566.08 KB, application/x-gzip)
2007-02-22 07:34 UTC, Kasper Dupont
no flags Details

Description Kasper Dupont 2007-02-22 07:10:14 UTC
Description of problem:
When trying to install ltrace, yum enters an infinite loop selecting on an empty
set of file descriptors.

Version-Release number of selected component (if applicable):
yum-2.6.1-0.fc5

How reproducible:
Don't know

Steps to Reproduce:
1. yum install ltrace
  
Actual results:
The output ends with:
Transaction Test Succeeded
Running Transaction
  Installing: ltrace                       ######################### [1/1]

Then yum just hangs. Using strace on the process results in an endless list of:
select(0, NULL, NULL, NULL, {1, 0})     = 0 (Timeout)
select(0, NULL, NULL, NULL, {1, 0})     = 0 (Timeout)
select(0, NULL, NULL, NULL, {1, 0})     = 0 (Timeout)
select(0, NULL, NULL, NULL, {1, 0})     = 0 (Timeout)


Expected results:
yum successfully installs ltrace

Additional info:
gdb backtrace of the process:

done.
Loaded symbols for /lib/libnss_dns.so.2

0x001d4f28 in ___newselect_nocancel () from /lib/libc.so.6
(gdb) bt
#0  0x001d4f28 in ___newselect_nocancel () from /lib/libc.so.6
#1  0x003a18e8 in __os_sleep_rpmdb (dbenv=0x929c238, secs=1, usecs=0) at
../db/dist/../os/os_sleep.c:84
#2  0x0039e464 in __memp_sync_int_rpmdb (dbenv=0x929c238, dbmfp=0x9a1b620,
trickle_max=0, op=DB_SYNC_FILE, wrotep=0x0)
    at ../db/dist/../mp/mp_sync.c:379
#3  0x0039eb1b in __memp_fsync_rpmdb (dbmfp=0x9a1b620) at
../db/dist/../mp/mp_sync.c:167
#4  0x00354718 in __db_sync_rpmdb (dbp=0x9a1b368) at ../db/dist/../db/db_am.c:528
#5  0x00360f6d in __db_sync_pp_rpmdb (dbp=0x9a1b368, flags=0) at
../db/dist/../db/db_iface.c:1475
#6  0x002f0da6 in db3sync (dbi=0x9a1b1d8, flags=0) at db3.c:466
#7  0x002ed9e5 in rpmdbAdd (db=0x99aad48, iid=1172127228, h=0x91946a8,
ts=0x915e520, hdrchk=0x69fb10 <headerCheck>)
    at rpmdb.h:700
#8  0x006a6645 in rpmpsmStage (psm=0x93bb180, stage=PSM_RPMDB_ADD) at psm.c:2080
#9  0x006a7eb2 in rpmpsmNext (psm=Variable "psm" is not available.
) at psm.c:1340
#10 0x006a7282 in rpmpsmStage (psm=0x93bb180, stage=PSM_POST) at psm.c:1837
#11 0x006a7eb2 in rpmpsmNext (psm=Variable "psm" is not available.
) at psm.c:1340
#12 0x006a6c9e in rpmpsmStage (psm=0x93bb180, stage=PSM_PKGINSTALL) at psm.c:1960
#13 0x006ce3f4 in rpmtsRun (ts=0x915e520, okProbs=0x0, ignoreSet=1684631598) at
transaction.c:2120
#14 0x00c0feed in rpmts_Run (s=0xb7a766d8, args=0xb6b2fb8c, kwds=0x0) at
rpmts-py.c:1195
#15 0x03a79cfd in PyCFunction_Call () from /usr/lib/libpython2.4.so.1.0
#16 0x03ab4d0b in PyEval_EvalFrame () from /usr/lib/libpython2.4.so.1.0
#17 0x03ab5638 in PyEval_EvalCodeEx () from /usr/lib/libpython2.4.so.1.0
#18 0x03ab39eb in PyEval_EvalFrame () from /usr/lib/libpython2.4.so.1.0
#19 0x03ab47ac in PyEval_EvalFrame () from /usr/lib/libpython2.4.so.1.0
#20 0x03ab5638 in PyEval_EvalCodeEx () from /usr/lib/libpython2.4.so.1.0
#21 0x03ab39eb in PyEval_EvalFrame () from /usr/lib/libpython2.4.so.1.0
#22 0x03ab5638 in PyEval_EvalCodeEx () from /usr/lib/libpython2.4.so.1.0
#23 0x03ab56c3 in PyEval_EvalCode () from /usr/lib/libpython2.4.so.1.0
#24 0x03ad2428 in Py_CompileString () from /usr/lib/libpython2.4.so.1.0
#25 0x03ad3b38 in PyRun_SimpleFileExFlags () from /usr/lib/libpython2.4.so.1.0
#26 0x03ad421a in PyRun_AnyFileExFlags () from /usr/lib/libpython2.4.so.1.0
#27 0x03adac45 in Py_Main () from /usr/lib/libpython2.4.so.1.0
#28 0x080485b2 in main ()
(gdb) 

And trying to use the just installed ltrace on the process:
ltrace -p 3328
--- SIGSTOP (Stopped (signal)) ---
--- SIGSTOP (Stopped (signal)) ---


When I was trying to install the package I might have had an rpm query command
running in a different tty. The rpm query command completed successfully.

Comment 1 Kasper Dupont 2007-02-22 07:13:15 UTC
Some additional info, which may or may not help:

ls -l /proc/3328/fd
total 0
lrwx------ 1 root root 64 Feb 22 08:11 0 -> /dev/pts/5
lrwx------ 1 root root 64 Feb 22 08:11 1 -> /dev/pts/5
lrwx------ 1 root root 64 Feb 22 08:11 10 ->
/var/cache/yum/extras/primary.xml.gz.sqlite
lrwx------ 1 root root 64 Feb 22 08:11 11 -> /var/lib/rpm/Packages
lrwx------ 1 root root 64 Feb 22 08:11 12 -> /var/lib/rpm/Name
lrwx------ 1 root root 64 Feb 22 08:11 13 -> /var/lib/rpm/Basenames
lr-x------ 1 root root 64 Feb 22 08:11 14 ->
/var/cache/yum/core/packages/ltrace-0.3.36-4.2.i386.rpm
lrwx------ 1 root root 64 Feb 22 08:11 15 -> /var/lib/rpm/__db.000
lr-x------ 1 root root 64 Feb 22 08:11 16 ->
/var/cache/yum/core/packages/ltrace-0.3.36-4.2.i386.rpm
lr-x------ 1 root root 64 Feb 22 08:11 17 -> /var/lib/rpm/Pubkeys
lrwx------ 1 root root 64 Feb 22 08:11 18 -> /var/lib/rpm/Group
lrwx------ 1 root root 64 Feb 22 08:11 19 -> /var/lib/rpm/Requirename
lrwx------ 1 root root 64 Feb 22 07:58 2 -> /dev/pts/5
lrwx------ 1 root root 64 Feb 22 08:11 20 -> /var/lib/rpm/Providename
lrwx------ 1 root root 64 Feb 22 08:11 21 -> /var/lib/rpm/Dirnames
lrwx------ 1 root root 64 Feb 22 08:11 22 -> /var/lib/rpm/Requireversion
lrwx------ 1 root root 64 Feb 22 08:11 23 -> /var/lib/rpm/Provideversion
lrwx------ 1 root root 64 Feb 22 08:11 24 -> /var/lib/rpm/Installtid
lrwx------ 1 root root 64 Feb 22 08:11 25 -> /var/lib/rpm/Sigmd5
lrwx------ 1 root root 64 Feb 22 08:11 26 -> /var/lib/rpm/Sha1header
lrwx------ 1 root root 64 Feb 22 08:11 27 -> /var/lib/rpm/Filemd5s
l-wx------ 1 root root 64 Feb 22 08:11 3 -> /var/log/yum.log
lrwx------ 1 root root 64 Feb 22 08:11 4 -> socket:[13824]
lrwx------ 1 root root 64 Feb 22 08:11 5 -> socket:[13959]
lr-x------ 1 root root 64 Feb 22 08:11 6 -> /var/lib/rpm/Packages
lrwx------ 1 root root 64 Feb 22 08:11 7 ->
/var/cache/yum/core/primary.xml.gz.sqlite
lrwx------ 1 root root 64 Feb 22 08:11 8 ->
/var/cache/yum/updates/primary.xml.gz.sqlite
lrwx------ 1 root root 64 Feb 22 08:11 9 ->
/var/cache/yum/kasperd/primary.xml.gz.sqlite

cat /proc/3328/maps
00101000-00118000 r-xp 00000000 09:05 245599     /lib/ld-2.4.so
00118000-00119000 r-xp 00016000 09:05 245599     /lib/ld-2.4.so
00119000-0011a000 rwxp 00017000 09:05 245599     /lib/ld-2.4.so
0011a000-0011b000 r-xp 00000000 09:05 703461    
/usr/lib/python2.4/lib-dynload/_weakref.so
0011b000-0011c000 rwxp 00000000 09:05 703461    
/usr/lib/python2.4/lib-dynload/_weakref.so
0011c000-0023c000 r-xp 00000000 09:05 245733     /lib/libc-2.4.so
0023c000-0023e000 r-xp 00120000 09:05 245733     /lib/libc-2.4.so
0023e000-0023f000 rwxp 00122000 09:05 245733     /lib/libc-2.4.so
0023f000-00242000 rwxp 0023f000 00:00 0 
00244000-00268000 r-xp 00000000 09:05 250406     /lib/libm-2.4.so
00268000-00269000 r-xp 00023000 09:05 250406     /lib/libm-2.4.so
00269000-0026a000 rwxp 00024000 09:05 250406     /lib/libm-2.4.so
0026c000-0027e000 r-xp 00000000 09:05 282791     /usr/lib/libz.so.1.2.3
0027e000-0027f000 rwxp 00011000 09:05 282791     /usr/lib/libz.so.1.2.3
00281000-002bc000 r-xp 00000000 09:05 280718     /usr/lib/libbeecrypt.so.6.4.0
002bc000-002bf000 rwxp 0003a000 09:05 280718     /usr/lib/libbeecrypt.so.6.4.0
002c1000-003d3000 r-xp 00000000 09:05 2507888    /usr/lib/librpmdb-4.4.so
003d3000-003d8000 rwxp 00111000 09:05 2507888    /usr/lib/librpmdb-4.4.so
003d8000-003dc000 r-xp 00000000 09:05 703501    
/usr/lib/python2.4/lib-dynload/stropmodule.so
003dc000-003de000 rwxp 00004000 09:05 703501    
/usr/lib/python2.4/lib-dynload/stropmodule.so
003de000-003e3000 r-xp 00000000 09:05 703502    
/usr/lib/python2.4/lib-dynload/structmodule.so
003e3000-003e4000 rwxp 00004000 09:05 703502    
/usr/lib/python2.4/lib-dynload/structmodule.so
003e4000-003e8000 r-xp 00000000 09:05 703509    
/usr/lib/python2.4/lib-dynload/zlibmodule.so
003e8000-003e9000 rwxp 00004000 09:05 703509    
/usr/lib/python2.4/lib-dynload/zlibmodule.so
003e9000-003ec000 r-xp 00000000 09:05 703455    
/usr/lib/python2.4/lib-dynload/_localemodule.so
003ec000-003ed000 rwxp 00003000 09:05 703455    
/usr/lib/python2.4/lib-dynload/_localemodule.so
003ed000-003f3000 r-xp 00000000 09:05 703484    
/usr/lib/python2.4/lib-dynload/itertoolsmodule.so
003f3000-003f5000 rwxp 00006000 09:05 703484    
/usr/lib/python2.4/lib-dynload/itertoolsmodule.so
003f5000-003fd000 r-xp 00000000 09:05 363004    
/usr/lib/python2.4/site-packages/cElementTree.so
003fd000-003fe000 rwxp 00007000 09:05 363004    
/usr/lib/python2.4/site-packages/cElementTree.so
003fe000-00402000 r-xp 00000000 09:05 703469    
/usr/lib/python2.4/lib-dynload/collectionsmodule.so
00402000-00403000 rwxp 00003000 09:05 703469    
/usr/lib/python2.4/lib-dynload/collectionsmodule.so
00403000-00406000 r-xp 00000000 09:05 703486    
/usr/lib/python2.4/lib-dynload/mathmodule.so
00406000-00407000 rwxp 00002000 09:05 703486    
/usr/lib/python2.4/lib-dynload/mathmodule.so
00407000-00409000 r-xp 00000000 09:05 703457    
/usr/lib/python2.4/lib-dynload/_randommodule.so
00409000-0040a000 rwxp 00002000 09:05 703457    
/usr/lib/python2.4/lib-dynload/_randommodule.so
0040a000-00419000 r-xp 00000000 09:05 250408     /lib/libpthread-2.4.so
00419000-0041a000 r-xp 0000e000 09:05 250408     /lib/libpthread-2.4.so
0041a000-0041b000 rwxp 0000f000 09:05 250408     /lib/libpthread-2.4.so
0041b000-0041d000 rwxp 0041b000 00:00 0 
0041f000-00442000 r-xp 00000000 09:05 280608     /usr/lib/librpmbuild-4.4.so
00442000-00444000 rwxp 00023000 09:05 280608     /usr/lib/librpmbuild-4.4.so
00444000-00450000 rwxp 00444000 00:00 0 
00450000-00452000 r-xp 00000000 09:05 605998    
/usr/lib/python2.4/lib-dynload/_bisect.so
00452000-00453000 rwxp 00001000 09:05 605998    
/usr/lib/python2.4/lib-dynload/_bisect.so
00453000-00464000 r-xp 00000000 09:05 703466    
/usr/lib/python2.4/lib-dynload/cPickle.so
00464000-00465000 rwxp 00010000 09:05 703466    
/usr/lib/python2.4/lib-dynload/cPickle.so
00465000-00468000 r-xp 00000000 09:05 249984     /lib/libtermcap.so.2.0.8
00468000-00469000 rwxp 00002000 09:05 249984     /lib/libtermcap.so.2.0.8
0046a000-00475000 r-xp 00000000 09:05 246948     /lib/libgcc_s-4.1.1-20070108.so.1
00475000-00476000 rwxp 0000a000 09:05 246948     /lib/libgcc_s-4.1.1-20070108.so.1
00478000-004ed000 r-xp 00000000 09:05 280793     /usr/lib/librpmio-4.4.so
004ed000-004f0000 rwxp 00074000 09:05 280793     /usr/lib/librpmio-4.4.so
004f0000-00513000 rwxp 004f0000 00:00 0 
00513000-00554000 r-xp 00000000 09:05 245838     /lib/libssl.so.0.9.8a
00554000-00558000 rwxp 00041000 09:05 245838     /lib/libssl.so.0.9.8a
00558000-0055f000 r-xp 00000000 09:05 363001    
/usr/lib/python2.4/site-packages/_sqlite.so
0055f000-00561000 rwxp 00006000 09:05 363001    
/usr/lib/python2.4/site-packages/_sqlite.so
00561000-00563000 r-xp 00000000 09:05 703503    
/usr/lib/python2.4/lib-dynload/syslog.so
00563000-00564000 rwxp 00001000 09:05 703503    
/usr/lib/python2.4/lib-dynload/syslog.so
00564000-00568000 r-xp 00000000 09:05 250383     /lib/libnss_dns-2.4.so
00568000-00569000 r-xp 00003000 09:05 250383     /lib/libnss_dns-2.4.so
00569000-0056a000 rwxp 00004000 09:05 250383     /lib/libnss_dns-2.4.so
0057c000-0057e000 r-xp 00000000 09:05 250440     /lib/libutil-2.4.so
0057e000-0057f000 r-xp 00001000 09:05 250440     /lib/libutil-2.4.so
0057f000-00580000 rwxp 00002000 09:05 250440     /lib/libutil-2.4.so
00585000-00598000 r-xp 00000000 09:05 281565     /usr/lib/libelf-0.119.so
00598000-00599000 rwxp 00013000 09:05 281565     /usr/lib/libelf-0.119.so
0059b000-005b9000 r-xp 00000000 09:05 2507799    /usr/lib/libneon.so.25.0.5
005b9000-005ba000 rwxp 0001e000 09:05 2507799    /usr/lib/libneon.so.25.0.5
005fc000-00658000 r-xp 00000000 09:05 280819     /usr/lib/libsqlite3.so.0.8.6
00658000-0065a000 rwxp 0005b000 09:05 280819     /usr/lib/libsqlite3.so.0.8.6
00660000-0067f000 r-xp 00000000 09:05 250407     /lib/libexpat.so.0.5.0
0067f000-00681000 rwxp 0001e000 09:05 250407     /lib/libexpat.so.0.5.0
00683000-006de000 r-xp 00000000 09:05 2507890    /usr/lib/librpm-4.4.so
006de000-006e1000 rwxp 0005a000 09:05 2507890    /usr/lib/librpm-4.4.so
006e1000-00714000 rwxp 006e1000 00:00 0 
00722000-00723000 r-xp 00722000 00:00 0          [vdso]
00723000-0077a000 r-xp 00000000 09:05 703507    
/usr/lib/python2.4/lib-dynload/unicodedata.so
0077a000-00786000 rwxp 00056000 09:05 703507    
/usr/lib/python2.4/lib-dynload/unicodedata.so
00789000-0078c000 r-xp 00000000 09:05 250065     /lib/libsetrans.so.0
0078c000-0078d000 rwxp 00002000 09:05 250065     /lib/libsetrans.so.0
00841000-00844000 r-xp 00000000 09:05 703505    
/usr/lib/python2.4/lib-dynload/timemodule.so
00844000-00846000 rwxp 00002000 09:05 703505    
/usr/lib/python2.4/lib-dynload/timemodule.so
00891000-008a6000 r-xp 00000000 09:05 249852     /lib/libselinux.so.1
008a6000-008a8000 rwxp 00014000 09:05 249852     /lib/libselinux.so.1
008aa000-008e5000 r-xp 00000000 09:05 249425     /lib/libsepol.so.1
008e5000-008e6000 rwxp 0003b000 09:05 249425     /lib/libsepol.so.1
008e6000-008f0000 rwxp 008e6000 00:00 0 
009b1000-009b4000 r-xp 00000000 09:05 2507787    /usr/lib/libkrb5support.so.0.0
009b4000-009b5000 rwxp 00002000 09:05 2507787    /usr/lib/libkrb5support.so.0.0
009cf000-009d2000 r-xp 00000000 09:05 703480    
/usr/lib/python2.4/lib-dynload/fcntlmodule.so
009d2000-009d3000 rwxp 00003000 09:05 703480    
/usr/lib/python2.4/lib-dynload/fcntlmodule.so
009e2000-009eb000 r-xp 00000000 09:05 703458    
/usr/lib/python2.4/lib-dynload/_socketmodule.so
009eb000-009ee000 rwxp 00009000 09:05 703458    
/usr/lib/python2.4/lib-dynload/_socketmodule.so
00a4c000-00a64000 r-xp 00000000 09:05 2507798    /usr/lib/libgssapi_krb5.so.2.2
00a64000-00a65000 rwxp 00017000 09:05 2507798    /usr/lib/libgssapi_krb5.so.2.2
00a67000-00a8b000 r-xp 00000000 09:05 2507796    /usr/lib/libk5crypto.so.3.0
00a8b000-00a8c000 rwxp 00024000 09:05 2507796    /usr/lib/libk5crypto.so.3.0
00ac5000-00ac9000 r-xp 00000000 09:05 703464    
/usr/lib/python2.4/lib-dynload/binascii.so
00ac9000-00aca000 rwxp 00003000 09:05 703464    
/usr/lib/python2.4/lib-dynload/binascii.so
00b21000-00b28000 r-xp 00000000 09:05 703462    
/usr/lib/python2.4/lib-dynload/arraymodule.so
00b28000-00b2a000 rwxp 00007000 09:05 703462    
/usr/lib/python2.4/lib-dynload/arraymodule.so
00b3a000-00bad000 r-xp 00000000 09:05 2507797    /usr/lib/libkrb5.so.3.2
00bad000-00baf000 rwxp 00073000 09:05 2507797    /usr/lib/libkrb5.so.3.2
00bbf000-00bcd000 r-xp 00000000 09:05 703471    
/usr/lib/python2.4/lib-dynload/datetime.so
00bcd000-00bd0000 rwxp 0000d000 09:05 703471    
/usr/lib/python2.4/lib-dynload/datetime.so
00bd7000-00be5000 r-xp 00000000 09:05 245628     /lib/libresolv-2.4.so
00be5000-00be6000 r-xp 0000d000 09:05 245628     /lib/libresolv-2.4.so
00be6000-00be7000 rwxp 0000e000 09:05 245628     /lib/libresolv-2.4.so
00be7000-00be9000 rwxp 00be7000 00:00 0 
00bfc000-00c17000 r-xp 00000000 09:05 362931    
/usr/lib/python2.4/site-packages/rpm/_rpmmodule.so
00c17000-00c19000 rwxp 0001b000 09:05 362931    
/usr/lib/python2.4/site-packages/rpm/_rpmmodule.so
00c91000-00cd9000 r-xp 00000000 09:05 362941    
/usr/lib/python2.4/site-packages/libxml2mod.so
00cd9000-00cde000 rwxp 00047000 09:05 362941    
/usr/lib/python2.4/site-packages/libxml2mod.so
00d41000-00d43000 r-xp 00000000 09:05 250421     /lib/libcom_err.so.2.1
00d43000-00d44000 rwxp 00001000 09:05 250421     /lib/libcom_err.so.2.1
00d49000-00d4c000 r-xp 00000000 09:05 703459    
/usr/lib/python2.4/lib-dynload/_ssl.so
00d4c000-00d4d000 rwxp 00003000 09:05 703459    
/usr/lib/python2.4/lib-dynload/_ssl.so
00d62000-00d65000 r-xp 00000000 09:05 703467    
/usr/lib/python2.4/lib-dynload/cStringIO.so
00d65000-00d66000 rwxp 00003000 09:05 703467    
/usr/lib/python2.4/lib-dynload/cStringIO.so
00dd5000-00ddc000 r-xp 00000000 09:05 282785     /usr/lib/libpopt.so.0.0.0
00ddc000-00ddd000 rwxp 00006000 09:05 282785     /usr/lib/libpopt.so.0.0.0
00df5000-00df7000 r-xp 00000000 09:05 250405     /lib/libdl-2.4.so
00df7000-00df8000 r-xp 00001000 09:05 250405     /lib/libdl-2.4.so
00df8000-00df9000 rwxp 00002000 09:05 250405     /lib/libdl-2.4.so
00eef000-00ef2000 r-xp 00000000 09:05 703499    
/usr/lib/python2.4/lib-dynload/shamodule.so
00ef2000-00ef3000 rwxp 00002000 09:05 703499    
/usr/lib/python2.4/lib-dynload/shamodule.so
00f1b000-00f1d000 r-xp 00000000 09:05 703487    
/usr/lib/python2.4/lib-dynload/md5module.so
00f1d000-00f1e000 rwxp 00002000 09:05 703487    
/usr/lib/python2.4/lib-dynload/md5module.so
00f3e000-00f42000 r-xp 00000000 09:05 703494    
/usr/lib/python2.4/lib-dynload/readline.so
00f42000-00f43000 rwxp 00004000 09:05 703494    
/usr/lib/python2.4/lib-dynload/readline.so
00f45000-00f4d000 r-xp 00000000 09:05 250385     /lib/libnss_files-2.4.so
00f4d000-00f4e000 r-xp 00007000 09:05 250385     /lib/libnss_files-2.4.so
00f4e000-00f4f000 rwxp 00008000 09:05 250385     /lib/libnss_files-2.4.so
03a2f000-03b23000 r-xp 00000000 09:05 281321     /usr/lib/libpython2.4.so.1.0
03b23000-03b45000 rwxp 000f4000 09:05 281321     /usr/lib/libpython2.4.so.1.0
03b45000-03b48000 rwxp 03b45000 00:00 0 
05452000-05531000 r-xp 00000000 09:05 280235     /usr/lib/libstdc++.so.6.0.8
05531000-05535000 r-xp 000de000 09:05 280235     /usr/lib/libstdc++.so.6.0.8
05535000-05536000 rwxp 000e2000 09:05 280235     /usr/lib/libstdc++.so.6.0.8
05536000-0553c000 rwxp 05536000 00:00 0 
05b4c000-05c75000 r-xp 00000000 09:05 245672     /lib/libcrypto.so.0.9.8a
05c75000-05c88000 rwxp 00128000 09:05 245672     /lib/libcrypto.so.0.9.8a
05c88000-05c8b000 rwxp 05c88000 00:00 0 
07683000-077a7000 r-xp 00000000 09:05 282823     /usr/lib/libxml2.so.2.6.23
077a7000-077af000 rwxp 00124000 09:05 282823     /usr/lib/libxml2.so.2.6.23
077af000-077b0000 rwxp 077af000 00:00 0 
078a1000-078a7000 r-xp 00000000 09:05 250441     /lib/librt-2.4.so
078a7000-078a8000 r-xp 00005000 09:05 250441     /lib/librt-2.4.so
078a8000-078a9000 rwxp 00006000 09:05 250441     /lib/librt-2.4.so
07d70000-07d7f000 r-xp 00000000 09:05 282839     /usr/lib/libbz2.so.1.0.3
07d7f000-07d80000 rwxp 0000f000 09:05 282839     /usr/lib/libbz2.so.1.0.3
07dbb000-07de7000 r-xp 00000000 09:05 280312     /usr/lib/libreadline.so.5.0
07de7000-07deb000 rwxp 0002c000 09:05 280312     /usr/lib/libreadline.so.5.0
07deb000-07dec000 rwxp 07deb000 00:00 0 
08048000-08049000 r-xp 00000000 09:05 1279287    /usr/bin/python
08049000-0804a000 rw-p 00000000 09:05 1279287    /usr/bin/python
08ef6000-0a0c2000 rw-p 08ef6000 00:00 0 
b6888000-b68f6000 rw-s 00000000 09:05 246301     /var/lib/rpm/__db.003
b68f6000-b6b3f000 rw-p b68f6000 00:00 0 
b6b7e000-b6cc0000 rw-s 00000000 09:05 246234     /var/lib/rpm/__db.002
b6cc0000-b6d42000 rw-p b6cc0000 00:00 0 
b6d62000-b7686000 rw-p b6d62000 00:00 0 
b7686000-b7783000 rw-p b7803000 00:00 0 
b7783000-b77c3000 rw-p b7783000 00:00 0 
b7802000-b7843000 rw-p b7802000 00:00 0 
b7843000-b78b1000 rw-s 00000000 09:05 246301     /var/lib/rpm/__db.003
b78b1000-b79f3000 rw-s 00000000 09:05 246234     /var/lib/rpm/__db.002
b79f3000-b79f9000 rw-s 00000000 09:05 245467     /var/lib/rpm/__db.001
b79f9000-b7a7b000 rw-p b79f9000 00:00 0 
b7a7c000-b7bc1000 rw-p b7a7c000 00:00 0 
b7bc2000-b7c64000 rw-p b7bc2000 00:00 0 
b7c65000-b7ce7000 rw-p b7c65000 00:00 0 
b7ce7000-b7ee7000 r--p 00000000 09:05 282529     /usr/lib/locale/locale-archive
b7ee7000-b7f6c000 rw-p b7ee7000 00:00 0 
b7f70000-b7f76000 rw-s 00000000 09:05 245467     /var/lib/rpm/__db.001
b7f76000-b7f78000 rw-p b7f76000 00:00 0 
bf9b5000-bf9e1000 rw-p bf9b5000 00:00 0          [stack]


Comment 2 Kasper Dupont 2007-02-22 07:15:38 UTC
Eventhough the yum install command has not terminated I am actually able to see
the installed package with rpm -q:

rpm -q ltrace
ltrace-0.3.36-4.2


Comment 3 Kasper Dupont 2007-02-22 07:34:36 UTC
Created attachment 148559 [details]
strace of another run of yum

I attempted to reproduce the problem installing another pakcage, but this time
using strace. This time yum apparently made it to the same point, but rather
than entering an infinite loop of select calls, it blocks indefinitely on a
futex call. Again the package seems to have been successfully installed:

rpm -q perl-IO-Zlib
perl-IO-Zlib-1.04-4.2

Comment 4 Jeff Johnson 2007-03-08 13:13:51 UTC
Hanging on a futex is a stale lock problem.

Doing
    rm -f /var/lib/rpm/__db*
will remove the stale lock.

Doing
    rpm -V perl-IO-zlib
will verify that not only the header, but also the payload contents, are actually installed.

Comment 5 Kasper Dupont 2007-03-09 21:10:40 UTC
A stale lock does not explain the original problem though. I tried rpm -V with
both package names. It produced no output, which should mean the packages were
successfully installed.

[kasperd@localhost:pts/9:~] rpm -V ltrace perl-IO-Zlib ; echo $?
0
[kasperd@localhost:pts/9:~] 


Comment 6 Jeff Johnson 2007-03-12 20:30:20 UTC
The original problem was with yum, not rpm. Seek guidance from yum, not rpm, if
you want to understand the select loop.

Hanging on a futex is almost always a stale lock problem.

And rpm -V ltrace perl-IO-Zlib ; echo $? returning 0 means the package payload
is/was installed correctly. Adding -v will diplay the successes as well as the failures.
I'm not sure what other answers you wish.

Comment 7 Kasper Dupont 2007-03-12 21:07:18 UTC
I reported the bug against yum, somebody else changed it to rpm. Changing back
to yum.

Comment 8 Jeff Johnson 2007-04-25 20:46:44 UTC
And so we go yum -> rpm -> yum -> rpm around and around.

The stale lock problem is likely fixed since 1/3/2007 (which is where the mmap problem in the FC kernel 
was fixed).

Comment 9 Panu Matilainen 2007-08-09 19:47:41 UTC
Most likely yet another kernel mmap() bug victim of the time. If reproducable
after updating to kernel 2.6.19-1.2895 or later then reinvestigation is needed.

*** This bug has been marked as a duplicate of 213963 ***


Note You need to log in before you can comment on or make changes to this bug.