RHEL7/Oracle HA: systemd spends its time sending "kill0" to processes and reading "/proc/PID/stat" files, causing high CPU consumption

Solution Verified - Updated -

Issue

  • On RHEL7 system running oracle-ohasd.service unit, high CPU consumption is seen for systemd process

    USER       PID %CPU %MEM    VSZ   RSS TTY      STAT START   TIME COMMAND
    root         1 36.1  0.0 198320 11308 ?        Rs    2021 247455:13 /usr/lib/systemd/systemd --switched-root --system --deserialize 22
    
  • Stracing systemd (PID 1) for 30s shows a very high number of kill(<PID>, SIG_0) operations and opening/reading of /proc/<PID>/stat nodes

    # timeout 30s strace -ttTvyy -s 128 -o /tmp/systemd.strace -p 1
    
    # egrep -c "kill\([0-9]+, SIG_0\)" /tmp/systemd.strace
    8293
    
    # egrep -c "open\(\"/proc/[0-9]+/stat\"," /tmp/systemd.strace
    8308
    

Environment

  • Red Hat Enterprise Linux 7
    • Oracle High Availability Service

Subscriber exclusive content

A Red Hat subscription provides unlimited access to our knowledgebase, tools, and much more.

Current Customers and Partners

Log in for full access

Log In

New to Red Hat?

Learn more about Red Hat subscriptions

Using a Red Hat product through a public cloud?

How to access this content