libvirt process on hypervisors uses very large amount of memory

Solution Verified - Updated -

Issue

  • The libvirtd memory leak, process grows to 20 GB (or more).
  # top
  top - 14:58:22 up 53 days, 19:57, 13 users,  load average: 2.36, 1.66, 1.07
  Tasks: 681 total,   2 running, 678 sleeping,   0 stopped,   1 zombie
  Cpu(s):  5.4%us,  6.8%sy,  0.0%ni, 87.6%id,  0.2%wa,  0.0%hi,  0.1%si,  0.0%st
  Mem:  49009512k total, 41121572k used,  7887940k free,   230672k buffers
  Swap:  8388600k total,  2463816k used,  5924784k free,   661280k cached

    PID USER      PR  NI  VIRT  RES  SHR S %CPU %MEM    TIME+  COMMAND            
  27867 root      20   0  158m  14m 1860 R 100.0  0.0   8:25.55 gvfs-gdu-volume   
    164 root      25   5     0    0    0 S 54.0  0.0   6491:26 ksmd               
  21498 root      20   0 20.2g  18g 4084 S 44.4 38.9  21477:56 libvirtd  
                         ^^^^^ <= here

  A large amount of messages are output(/var/log/libvirt/libvirtd.log). 

  virFork:282 : cannot fork child process: Cannot allocate memory
  virFork:282 : cannot fork child process: Cannot allocate memory
  virFork:282 : cannot fork child process: Cannot allocate memory
  • Our customer would like to know how to avoid memory leaks as soon as possible.

  • By the way, there is a similar report bz# 891324 which is on RHEL7:
    (https://bugzilla.redhat.com/show_bug.cgi?id=891324) Is this the same issue?

Environment

  • Red Hat Enterprise Linux 6 Update 3
  • Architecture: x86_64
  • Kernel Version: 2.6.32-279.el6
  • libvirt version 0.9.10-21

Subscriber exclusive content

A Red Hat subscription provides unlimited access to our knowledgebase of over 48,000 articles and solutions.

Current Customers and Partners

Log in for full access

Log In
Close

Welcome! Check out the Getting Started with Red Hat page for quick tours and guides for common tasks.