Rate taking 100% of CPU



  • Lately I have noticed that my pfSense's temperature is over 90C and CPU usage 100%. System activity page shows that rate is taking 100% of CPU.

    After reboot CPU load stays low for few days but then the rate once again starts to take everything my poor CPU has to offer.

    What might be causing this problem?



  • What version pfsense?



  • 2.1-RC0 (i386)
    built on Thu Jul 25 03:45:59 EDT 2013

    This has happened with some previous versions (backed up on July 18 and July 12).



  • Do you have device poling enabled, any packages installed?



  • Device polling is not enabled and the following packages are installed:

    File manager
    iftop
    nmap
    OpenVPN Client Export Utility



  • I've asked my friend who is freebsd guru and he told me that it could be anything that uses /usr/local/bin/rate. For 2.x versions of pfsense it is builtin rate package, that is used for Status > Traffic Graph
    It could be also anything that uses rate.



  • Well, I have been running Status: Traffic Graph page almost continuosly, maybe that has triggered rate's high CPU usage.

    I have now updated to 2.1-RC1 (i386) built on Thu Aug 1 19:03:40 EDT 2013, current uptime ~22 hours and CPU usage is 5%. I keep running that Traffic Graph to see if I can reproduce that effect. If I can then I reboot and do not run Traffic Graph to see if it makes any difference.


  • Rebel Alliance Developer Netgate

    That seems to be par for the course with rate. Sometimes it will just go nuts unpredictably. It will also occasionally just stop working and block a GUI thread when it gets stuck. It used to mess up the whole GUI on 2.0.2 and before when that happened.



  • I have a similar problem. After about one week of running the CPU usage goes to almost 100% but I can't open the console. All is frozen (console, web gui, interfaces). In my case the slave system (CARP) takes over.

    I use 2.1-RC0 (amd64) built on Fri Jul 12 01:01:27 EDT 2013 on a KVM virtual instance. The processor is QEMU64. The old version 2.0.x never had a hanger. As NIC I use the e1000.

    Is there a possibility to log the processes? I have no chance to see which process uses 100% of cpu.



  • @Erik_CH:

    Is there a possibility to log the processes?

    Leave the command```
    top -S -H



  • This command I know but the console is frozen also. You can't type anything anymore.

    I should have something that writes the same information to a file permanently and which is still available after a reboot.



  • @Erik_CH:

    This command I know but the console is frozen also. You can't type anything anymore.

    I should have something that writes the same information to a file permanently and which is still available after a reboot.

    Once the system gets into that state it is pretty difficult to start something that will log to a file. If you log something to a file there is no guarantee you will be able to correctly close the file to make all its contents available after the reboot.

    If the system genuinely freezes (in the sense of stopping running normal user processes) then leaving the suggested top command running on the console should give you an indication of heavy CPU users just before the freeze.



  • Thank you for your tip. I entered the top command let it running until it freezes again. On this frozen command shell I should see the last action. On my virtual instance I saw that just before freezing the CPU load increases to 80 % and then to 100%.

    I will report my result as soon it happens again.



  • How long do you leave rate running to have this behavior?
    Probably even a libpcap bug as well!


Log in to reply