All of lore.kernel.org
 help / color / mirror / Atom feed
* Huge memory leak in virtio, see kvm-Bugs-2989366
@ 2010-04-20 22:29 Leszek Urbanski
  2010-04-20 22:51 ` Alexander Graf
  2010-04-21  1:58 ` Ryan Harper
  0 siblings, 2 replies; 18+ messages in thread
From: Leszek Urbanski @ 2010-04-20 22:29 UTC (permalink / raw)
  To: kvm

Hi,

this is a follow-up to bug 2989366:

https://sourceforge.net/tracker/?func=detail&atid=893831&aid=2989366&group_id=180599

after extensive debugging with the guys on #kvm it turns out that the leak is
in the qemu-kvm userland process, in virtio-blk.

A summary of my setup is described in the bug report above.

The affected guests have a common load profile: frequent sequential I/O on
large (~ 2 GB) files.

I tried switching off or changing almost all options in my qemu command
line and the only option that makes a difference is -drive if=virtio.

When an affected guest is run with virtio drives the qemu-kvm process starts
leaking immediately after startup and grows (for the most heavily leaking
guests) by ~ 1 GB RSS for every ten hours (and keeps growing until OOM).

With -drive if=ide or scsi, it doesn't leak at all.

A diff of /proc/<pid>/maps of an affected qemu-kvm at startup and after
1.5 hrs:

-039b9000-5ccd0000 rw-p 00000000 00:00 0
+039b9000-65803000 rw-p 00000000 00:00 0

(a heap leak?)

I'm willing to debug further. The problem is 100% reproducible.


-- 
Leszek "Tygrys" Urbanski, SCSA, SCNA
 "Unix-to-Unix Copy Program;" said PDP-1. "You will never find a more
  wretched hive of bugs and flamers. We must be cautious." -- DECWARS
     http://cygnus.moo.pl/ -- Cygnus High Altitude Balloon

^ permalink raw reply	[flat|nested] 18+ messages in thread

end of thread, other threads:[~2010-04-25 13:35 UTC | newest]

Thread overview: 18+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2010-04-20 22:29 Huge memory leak in virtio, see kvm-Bugs-2989366 Leszek Urbanski
2010-04-20 22:51 ` Alexander Graf
2010-04-21  7:53   ` Leszek Urbanski
2010-04-21  8:25     ` Avi Kivity
2010-04-21  1:58 ` Ryan Harper
2010-04-21  6:08   ` Michael Tokarev
2010-04-21 13:29     ` Leszek Urbanski
2010-04-21 18:39       ` Stefan Hajnoczi
2010-04-21 14:32     ` Ryan Harper
2010-04-21 18:27       ` [PATCH] block: Free iovec arrays allocated by multiwrite_merge() Stefan Hajnoczi
2010-04-21 18:35         ` Ryan Harper
2010-04-21 18:43           ` Brian Jackson
2010-04-21 19:59           ` Leszek Urbanski
2010-04-21 20:03             ` Ryan Harper
2010-04-21 20:13               ` Leszek Urbanski
2010-04-25 12:36                 ` Avi Kivity
2010-04-25 13:27                   ` Stefan Hajnoczi
2010-04-25 13:35                     ` Avi Kivity

This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.