I spent some more time on this, and it appears my leak is related to
multipath. Shutting down multipath (multipath -F; service multipath-
tools stop) stops the leak. Alvin also appears to have multipath
running, it's listed in the dmesg he uploaded.

The udev messages I'm seeing in the libvirtd log are mirrored when
running "udevadm monitor". I found that removing "|change" from the
ACTION line in /lib/udev/rules.d/95-multipath.rules appears to fix the
leak, or at least slows it down considerably. I ran my two servers
overnight, and this morning libvirtd on the changed server is using 53MB
of RES memory as reported by top, and the unchanged server is using
2.5GB. Both had similar workloads.

Here's the exact line:

/lib/udev/rules.d/95-multipath.rules
from:
ACTION=="add|change", SUBSYSTEM=="block", RUN+="/sbin/multipath -v0 /dev/%k"
to:
ACTION=="add", SUBSYSTEM=="block", RUN+="/sbin/multipath -v0 /dev/%k"

I found it was added in debian bug #489850, and it looks harmless enough
to change, at least in my instance.

Also, an overnight run with multipath turned off resulted in only 5MB of
RES memory usage by libvirtd.

-- 
libvirtd eats away more memory over time
https://bugs.launchpad.net/bugs/571093
You received this bug notification because you are a member of Ubuntu
Bugs, which is subscribed to Ubuntu.

-- 
ubuntu-bugs mailing list
[email protected]
https://lists.ubuntu.com/mailman/listinfo/ubuntu-bugs

Reply via email to