public inbox for kvm@vger.kernel.org
 help / color / mirror / Atom feed
From: Leszek Urbanski <tygrys@moo.pl>
To: kvm@vger.kernel.org
Subject: Huge memory leak in virtio, see kvm-Bugs-2989366
Date: Wed, 21 Apr 2010 00:29:56 +0200	[thread overview]
Message-ID: <20100420222956.GA13218@moo.pl> (raw)

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

             reply	other threads:[~2010-04-20 22:36 UTC|newest]

Thread overview: 18+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2010-04-20 22:29 Leszek Urbanski [this message]
2010-04-20 22:51 ` Huge memory leak in virtio, see kvm-Bugs-2989366 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

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=20100420222956.GA13218@moo.pl \
    --to=tygrys@moo.pl \
    --cc=kvm@vger.kernel.org \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox