Re: How to diagnose memory leak in kvm-qemu-0.14.0?

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



On Fri, May 20, 2011 at 12:47 PM, Steve Kemp <steve@xxxxxxxxxxxxxx> wrote:
> On Fri May 20, 2011 at 12:01:58 +0100, Stefan Hajnoczi wrote:
>
>> >  wget http://mirror.bytemark.co.uk/misc/test-files/500M
>> >  while true; do cp 500M foo.img; rm foo.img; sleep 2; done
>> >
>> >  "top" shows the virt memory growing to >1gb in under two minutes.
>>
>> Were you able to track down the culprit?
>
>  Yes, or at least confirm my suspicion.  The virtio block device
>  is the source of the leak.
>
>  Host kernel: 2.6.32.15
>  Guest Kernel: linux-2.6.32.23
>
>  Leaking case:
>
>  opt/kvm2/bin/qemu-system-x86_64 -m 500 \
>    -drive file=/machines/kvm2/jail/root_fs,if=virtio,cache=off
>
>  Non leaking case:
>
>   /opt/kvm/current/bin/qemu-system-x86_64 -m 500 \
>     -drive file=/machines/kvm1/jail/root_fs,cache=off ..
>
>  The leak occurs with both KVM 0.12.5 and 0.14.0.
>
>  I've had a quick read of hw/virtio-blk.c but didn't see anything
>  glaringly obvious.  I'll need to trace through the code, drink more
>  coffee, or get lucky to narrow it down further.

Enabling the memory allocation trace events and adding the
__builtin_return_address() to them should provide enough information
to catch the caller who is leaking memory.

Stefan
--
To unsubscribe from this list: send the line "unsubscribe kvm" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at  http://vger.kernel.org/majordomo-info.html


[Index of Archives]     [KVM ARM]     [KVM ia64]     [KVM ppc]     [Virtualization Tools]     [Spice Development]     [Libvirt]     [Libvirt Users]     [Linux USB Devel]     [Linux Audio Users]     [Yosemite Questions]     [Linux Kernel]     [Linux SCSI]     [XFree86]
  Powered by Linux