From Bugzilla Helper: User-Agent: Mozilla/5.0 (X11; U; Linux i686; en-US; rv:1.7.7) Gecko/20050416 Fedora/1.0.3-1.3.1 Firefox/1.0.3 Description of problem: About once per month RPM decides to lock up on my system. This time I was trying to import a new pgp key into rpm from a file. #rpm --import somekey It just sat there. # ps PID TTY TIME CMD 1527 pts/1 00:00:00 su 1542 pts/1 00:00:00 bash 3033 pts/1 00:00:00 rpmk 3034 pts/1 00:00:00 ps I have tried telinit 1--made sure no rpm processes were running, and it still hangs. After it hangs the first time, *ANY* rpm operation causes it to hang. The only thing that fixes this is a reboot. Version-Release number of selected component (if applicable): How reproducible: Always Steps to Reproduce: 1. rpm --import somekey 1. rpm --install anyrpm.rpm 1. telinit 1 2. kill off nonessential processes 3. rpm --anycommand Actual Results: RPM hangs. I have let it run for up to 30 minutes. Additional info: Linux elorg.local 2.6.11.7-50 #1 SMP Wed Apr 13 12:14:46 PDT 2005 i686 i686 i386 GNU/Linux If anyone can tell my what kind of additional information they'd like, I'd be happy to get it.
After more fooling around, I can now get RPM to crash nearly any time I try to import a key. If you want to have a look at the public key, it on pgpkeys.mit.edu. The KeyID is 30c9ecf8 (Fedora Project - rawhide) I import that into gpg using gpg --keyserver pgpkeys.mit.edu --recv-keys 30c9ecf8 Then export it to a file using gpg --armor --export 30c9ecf8 > somekey Then I run rpm --import somekey I can almost always get it to hang. If it doesn't hang, I have noticed the key doesn't get imported. If I try to import it again, it will hang. The only way to kill it is switch to another console and kill the process. CTRL+C and CTRL+Z do not give up control. $ gpg --version gpg (GnuPG) 1.2.6 $ rpm --version RPM version 4.3.2
Could you attach the output of strace -fF -o /tmp/rpm.strace rpm --import somekey
Created attachment 114279 [details] Output of: strace -fF -o /tmp/rpm.strace rpm --import somekey Ran 'strace -fF -o /tmp/rpm.strace rpm --import somekey' about 8 times. It completed without errors every time. Ran 'rpm -qa gpg-pubkey*' The key was not imported.
After running the "strace ..." from my previous comment, I tried 'rpm --import somekey' and it hung (hanged? My english teacher from high school would be so disappointed...) again. Rebooted and tried "strace ..." again, no problems.
rpm is hanging because you are leaving a stale lock by killing the running process. Verify the existence of a stale lock by doing (after killing rpm): cd /var/lib/rpm /usr/lib/rpm/rpmdb_stat -CA Normal behavior is no locks with no rpm running. The key imports fine with rpm-4.4.3-0.4, I suspect the fix is in rpm-4.4.1, calculating pubkey fingerprints correctly. The changelog entry is (iirc): - fix: length of gpg V4 hash seed was incorrect (#146896).