Sorry, this is actually an RFC; patch was posted separately.

----- Original Message -----
> From: "Francesco Romani" <from...@redhat.com>
> To: qemu-devel@nongnu.org
> Cc: kw...@redhat.com, stefa...@redhat.com, lcapitul...@redhat.com, 
> mdr...@linux.vnet.ibm.com, "Francesco Romani"
> <from...@redhat.com>
> Sent: Tuesday, July 8, 2014 4:49:23 PM
> Subject: [PATCH] add watermark reporting for block devices
> 
> Hello everyone
> 
> I'm one of the oVirt developers (http://www.ovirt.org);
> oVirt is a virtualization management application built
> around qemu/kvm, so it is nice to get in touch :)
> 
> We have begun a big scalability improvement effort, aiming to
> support without problems hundreds of VMs per host, with plans
> to support thousands in a not so distant future.
> In doing so, we are reviewing our usage flows.
> 
> One of them is thin-provisioned storage, which is used
> quite extensively, with block devices (ISCSI for example)
> and COW images.
> When using thin provisioning, oVirt tries hard to hide this
> fact from the guest OS, and to do so watches closely
> the usage of the device, and resize it when its usage exceeds
> a configured threshold (the "high water mark"), in order
> to avoid the guest OS to get paused for space exhausted.
> 
> To do the watching, we poll he devices using libvirt
> (virDomainGetBlockInfo), which in turn uses query-blockstats.
> This is suboptimal with just one VM, but with hundereds of them,
> let alone thousands, it doesn't scale and it is quite a resource
> hog.
> 
> Would be great to have this watermark concept supported into qemu,
> with a new event to be raised when the limit is crossed.
> 
> To track this RFE I filed https://bugs.launchpad.net/qemu/+bug/1338957
> 
> Moreover, I had the chance to take a look at the QEMU sources
> and come up with this tentative patch which I'd also like
> to submit.
> 
> Comments and thoughts very welcome!
> 
> Thanks and best regards,
> 
> Francesco Romani (1):
>   block: add watermark event
> 
>  block.c                   | 56
>  +++++++++++++++++++++++++++++++++++++++++++++++
>  blockdev.c                | 21 ++++++++++++++++++
>  include/block/block.h     |  2 ++
>  include/block/block_int.h |  3 +++
>  qapi/block-core.json      | 33 ++++++++++++++++++++++++++++
>  qmp-commands.hx           | 24 ++++++++++++++++++++
>  6 files changed, 139 insertions(+)
> 
> --
> 1.9.3
> 
> 

-- 
Francesco Romani
RedHat Engineering Virtualization R & D
Phone: 8261328
IRC: fromani

Reply via email to