Bug 6344

Summary: Pump uses 90+% CPU and will not respond to pump commands
Product: [Retired] Red Hat Linux Reporter: klesser
Component: pumpAssignee: Erik Troan <ewt>
Status: CLOSED RAWHIDE QA Contact:
Severity: medium Docs Contact:
Priority: medium    
Version: 6.1CC: randy
Target Milestone: ---   
Target Release: ---   
Hardware: i386   
OS: Linux   
Whiteboard:
Fixed In Version: Doc Type: Bug Fix
Doc Text:
Story Points: ---
Clone Of: Environment:
Last Closed: 2000-02-03 16:45:17 UTC Type: ---
Regression: --- Mount Type: ---
Documentation: --- CRM:
Verified Versions: Category: ---
oVirt Team: --- RHEL 7.3 requirements from Atomic Host:
Cloudforms Team: --- Target Upstream Version:
Embargoed:

Description klesser 1999-10-25 17:53:34 UTC
Pump starts fine and performs expected tasks.

However, within minutes of starting, CPU usage of the
pump process reaches 90% and higher and does not go
down.

Issuing the status comand (pump -s) hangs indefinitely.

Attempting to reboot the system hangs when trying to
shut down the interface.

The kill command DOES work on the pump process (pump -k
does NOT work).

There appear to be 2 pump processes always running. Only
the process with PPID of 1 hits the CPU.

Comment 1 dunham 1999-12-01 20:22:59 UTC
I noticed the same problem in my Debian package.  The resolv.conf
parser seems to be broken.  If the first line in resolv.conf is not
a "search" line it sits and spins trying to parse the first line
repeatedly.  My fix is to add code at the end of the while loop to go
to the next line (actually the end of the current line, but the code
at the beginning will skip over the "\n").

The patch is:  (you might have to apply with -b if bugzilla or X paste
screws up the whitespace)

--- pump-0.7.3/pump.c.orig      Wed Dec  1 12:11:26 1999
+++ pump-0.7.3/pump.c   Wed Dec  1 12:14:46 1999
@@ -124,6 +124,7 @@
            *buf = '\0';
            return strdup(start);
        }
+       while (*start && (*start != "\n")) start++;
     }

     return NULL;

Comment 2 tmm 1999-12-06 01:20:59 UTC
I experienced this process "hang" problem.  It seems whenever the main pump
process is started, it hangs (it DOES manage to complete the first DHCP request
before hanging, and things proceed fine if you kill the process).  This process
is restarted anytime the ifup or ifdown is executed.

As noted above, if the first line of resolv.conf is not a search line, pump
fails.  I simply removed the domain command from the first line of resolv.conf
leaving the search as the first line.  Works now...

Not a real great solution, but I hope this info helps.

Mark

Comment 3 Erik Troan 2000-02-03 16:45:59 UTC
Fixed in pump-0.7.6, which will be on ftp://people.redhat.com/ewt later today.
Thanks for the patch!