From: Anthony Liguori <anthony@codemonkey.ws>
To: Kevin Wolf <kwolf@redhat.com>
Cc: uril@redhat.com, qemu-devel@nongnu.org,
Luiz Capitulino <lcapitulino@redhat.com>
Subject: Re: [Qemu-devel] [PATCH 0/3]: BLOCK_WATERMARK QMP event
Date: Thu, 11 Mar 2010 08:19:20 -0600 [thread overview]
Message-ID: <4B98FBE8.5050708@codemonkey.ws> (raw)
In-Reply-To: <4B98AB17.8080506@redhat.com>
On 03/11/2010 02:34 AM, Kevin Wolf wrote:
>
> Well, if you're aware of the semantics of this value, it might be. It's
> not exactly intuitive, but this is currently hidden inside qemu.
>
> What the high watermark says (in this implementation) is the highest
> offset into the image file of an cluster that was allocated during this
> qemu run. If you restart qemu, it starts at 0 again.
>
> I think there once was a version that tried to calculate the absolute
> highest value when the image was opened, but it was reverted because it
> just took too long. For the same reason I think a low watermark is
> unrealistic, even if we get shrinking images some time. It's just not
> doable efficiently, at least not in an easy way.
>
> I'm not sure if this semantics makes it a good public interface. Other
> than that, I'm not overly concerned with doing it like you suggest.
>
Making it an event certainly exposes it as part of the public interface
though, no?
Correct. A management tool could poll every 5 minutes to make the same
>> determination.
>>
> Yes. At the cost of doing it too little during installation and too
> often during regular operation. Of course, you could add heuristics to
> make the interval dynamic...
>
Depends on how much room you leave in your watermark.
> But honestly, while I do understand your point, this feels like a hack
> to work around shortcomings of an interface. So what we need to decide
> is which criterion outweighs the other in practice.
>
If I understand the use case correctly, what this really boils down to
is that you want to create a growable image on top of a non-growable
device. The management tool then deals with growth using this interface.
I'm somewhat inclined to suggest that the proper way to support this is
to teach qemu how to grow the LVM volume like it would grow any normal file.
>> This approach seems superior to me because it's considerably more
>> flexible. In this particular model, you have one disk on an LVM volume
>> and you need to grow that single disk image when you hit a high water mark.
>>
>> However, an alternative and equally valid model would be an LVM volume
>> containing a file system with multiple disk images for a single guest.
>> In this case, there is no high water mark for an individual disk, but
>> rather, there's a high water mark for the combination of all the disks.
>>
> If your file system supports sparse files, it's the wrong number. You
> need the allocated space then, not the highest offset. I really can't
> see much use of this watermark outside the original model.
>
Good point.
Regards,
Anthony Liguori
> Kevin
>
next prev parent reply other threads:[~2010-03-11 14:19 UTC|newest]
Thread overview: 24+ messages / expand[flat|nested] mbox.gz Atom feed top
2010-03-09 22:53 [Qemu-devel] [PATCH 0/3]: BLOCK_WATERMARK QMP event Luiz Capitulino
2010-03-09 22:53 ` [Qemu-devel] [PATCH 1/3] block-qcow2: keep highest allocated offset Luiz Capitulino
2010-03-09 22:53 ` [Qemu-devel] [PATCH 2/3] monitor: Introduce block_watermark command Luiz Capitulino
2010-03-09 22:53 ` [Qemu-devel] [PATCH 3/3] QMP: Introduce BLOCK_WATERMARK event Luiz Capitulino
2010-03-09 23:03 ` [Qemu-devel] [PATCH 0/3]: BLOCK_WATERMARK QMP event Anthony Liguori
2010-03-09 23:18 ` Luiz Capitulino
2010-03-09 23:08 ` Anthony Liguori
2010-03-09 23:22 ` Luiz Capitulino
2010-03-09 23:25 ` Luiz Capitulino
2010-03-09 23:55 ` Anthony Liguori
2010-03-10 21:02 ` Luiz Capitulino
2010-03-09 23:46 ` Anthony Liguori
2010-03-10 8:40 ` Kevin Wolf
2010-03-10 21:09 ` Luiz Capitulino
2010-03-10 21:20 ` Anthony Liguori
2010-03-11 8:34 ` Kevin Wolf
2010-03-11 14:19 ` Anthony Liguori [this message]
2010-03-11 14:58 ` Avi Kivity
2010-03-11 15:07 ` Anthony Liguori
2010-03-11 15:09 ` Avi Kivity
2010-03-11 16:16 ` Kevin Wolf
2010-03-10 8:33 ` [Qemu-devel] " Kevin Wolf
2010-03-10 9:28 ` Christoph Hellwig
2010-03-10 21:11 ` Luiz Capitulino
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=4B98FBE8.5050708@codemonkey.ws \
--to=anthony@codemonkey.ws \
--cc=kwolf@redhat.com \
--cc=lcapitulino@redhat.com \
--cc=qemu-devel@nongnu.org \
--cc=uril@redhat.com \
/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;
as well as URLs for NNTP newsgroup(s).