Red Hat Bugzilla – Bug 73651
rpm hang in pause()
Last modified: 2008-05-01 11:38:03 EDT
Description of Problem:
up2date hangs after installing a package. I believe the problem is in rpm.
Version-Release number of selected component (if applicable):
The rpm-4.1-1.06 is from <ftp://people.redhat.com/jbj/test-4.1>.
Attaching with gdb showed this:
#0 0x420ae557 in pause () from /lib/i686/libc.so.6
#1 0x4003688f in pause () from /lib/i686/libpthread.so.0
#2 0x400cbb38 in psmWait () from /usr/lib/librpm-4.1.so
#3 0x400cc0ee in runScript () from /usr/lib/librpm-4.1.so
#4 0x400cc73b in runInstScript () from /usr/lib/librpm-4.1.so
#5 0x400cec7e in rpmpsmStage () from /usr/lib/librpm-4.1.so
#6 0x400cdc31 in rpmpsmStage () from /usr/lib/librpm-4.1.so
#7 0x400cea89 in rpmpsmStage () from /usr/lib/librpm-4.1.so
#8 0x400eaf57 in rpmtsRun () from /usr/lib/librpm-4.1.so
#9 0x40091265 in rpmts_Run ()
My guess is this is related to the fix for bug 73134, since pause() is for
waiting on signals and the problem occurs with the test rpms to fix that bug. I
tried sending a SIGCHLD, no effect. There is no zombie child.
It was also unresponsive to SIGTERM. SIGINT killed it.
I am seeing this more and more ... in -Fvh/-Uvh as well as -e.
Doing an strace -pNNNN shows it is in a loop.
What information should we collect to debug this condition.
This problem has been reported over and over and fixed over and over. I am
concerned that this problem has been consistently present and not fixed.
Doing kill -9 for the process and then rm /var/lib/rpm/__* before rerunning has
resulted in rpm completing the desired task.
*** This bug has been marked as a duplicate of 73134 ***