System Load, 100%irq

  • Hi,


    When looking at top, my system (but also the fresh V2.1 SD Card release) shows 100% CPU usage for irq, the load average after some time is 1.00 0.98 0.76
    /proc/interrupts shows high activity on the global timer interrupts.


    I don't think this is normal / wanted behavior.


    Any ideas?


    Best regards,
    Johan Hellemans

  • Thanks for pointing this out. It took a while until I found the reason for this. By some small mistake from Freescale/Timesys, all the system time and all the idle time was wrongly added to the irq time. And because irq time is busy CPU work, it caused the CPU load to rise to 1.0 instead of stay at 0.0. I have attached a patch that should fix this problem.


    I have also added a second patch that sets CONFIG_NO_HZ=y in the fsvybrid_defconfig. This makes fsvybrid a tickless system, which means, the CPU can stay longer in sleep/idle mode. This should reduce the power consumption slightly. Please note that if you have an own defconfig for Linux, you must apply a similar modification to your own defconfig if you want to make use of this change: in menuconfig simply go to "Kernel features" and check the topic "Tickless System (Dynamic Ticks)".


    To apply the patches, go to the top directory of the Linux kernel and enter the following commands:


    Code
    1. patch -p1 < 0001-Fix-time-statistics-for-system-irq-and-idle-time.patch
    2. patch -p1 < 0002-Make-fsvybrid-a-tickless-system.patch


    Please note the "less-than" character for input redirection in these commands.


    By the way, we are planning to do a fsvybrid-V2.2 maintenance release soon to catch up with all the patches that have accumulated over time.


    Your F&S Support Team