From: Eric Blake <eblake@redhat.com>
To: "Benoît Canet" <benoit@irqsave.net>
Cc: kwolf@redhat.com, qemu-devel@nongnu.org, stefanha@redhat.com
Subject: Re: [Qemu-devel] [PATCH V3 for-1.6 3/5] block: Add support for throttling burst threshold in QMP and the command line.
Date: Fri, 26 Jul 2013 13:24:06 -0600 [thread overview]
Message-ID: <51F2CCD6.2020107@redhat.com> (raw)
In-Reply-To: <1374596968-20181-4-git-send-email-benoit@irqsave.net>
[-- Attachment #1: Type: text/plain, Size: 2726 bytes --]
On 07/23/2013 10:29 AM, Benoît Canet wrote:
> The thresholds of the leaky bucket algorithm can be used to allow some
> burstiness.
>
> Signed-off-by: Benoit Canet <benoit@irqsave.net>
> ---
> block/qapi.c | 24 +++++++++++++
> blockdev.c | 105 +++++++++++++++++++++++++++++++++++++++++++++++-------
> hmp.c | 32 +++++++++++++++--
> qapi-schema.json | 34 ++++++++++++++++--
> qemu-options.hx | 2 +-
> qmp-commands.hx | 30 ++++++++++++++--
> 6 files changed, 205 insertions(+), 22 deletions(-)
>
> @@ -1916,6 +1971,18 @@ QemuOptsList qemu_common_drive_opts = {
> .type = QEMU_OPT_NUMBER,
> .help = "limit write operations per second",
> },{
> + .name = "iops_threshold",
> + .type = QEMU_OPT_NUMBER,
> + .help = "total I/O operations threshold",
> + },{
Kevin's series renamed these to have a dash in the name, and also moved
all the throttling parameters into a sub-struct. Does it make more
sense to have just '*throttling' with that sub-struct containing 12
parameters, 6 for limits and 6 for thresholds, or would it be better to
have '*throttling' with 6 members for limits, as well as
'*throttling-threshold' with the other 6 members? Naming-wise,
throttling.bps-total and throttling-threshold.bps-total convey as much
information as throttling.bps-total and throttling.bps-total-threshold.
> +++ b/qapi-schema.json
> @@ -769,6 +769,18 @@
> #
> # @image: the info of image used (since: 1.6)
> #
> +# @bps_threshold: #optional total threshold in bytes (Since 1.6)
As others have stated, it would be worth explaining at the high level
the difference between limit and threshold (ie. why I need two different
parameters), as well as what the threshold defaults to if omitted (which
WILL be the case when driven by older management tools).
> +++ b/qemu-options.hx
> @@ -409,7 +409,7 @@ DEF("drive", HAS_ARG, QEMU_OPTION_drive,
> " [,cache=writethrough|writeback|none|directsync|unsafe][,format=f]\n"
> " [,serial=s][,addr=A][,id=name][,aio=threads|native]\n"
> " [,readonly=on|off][,copy-on-read=on|off]\n"
> - " [[,bps=b]|[[,bps_rd=r][,bps_wr=w]]][[,iops=i]|[[,iops_rd=r][,iops_wr=w]]\n"
> + " [[,bps=b]|[[,bps_rd=r][,bps_wr=w]]][[,iops=i]|[[,iops_rd=r][,iops_wr=w][,bps_threshold=bt]|[[,bps_rd_threshold=rt][,bps_wr_threshold=wt]]][[,iops_threshold=it]|[[,iops_rd_threshold=rt][,iops_wr_threshold=wt]]\n"
Is it worth line-wrapping this, so the help text doesn't pass 80 columns?
--
Eric Blake eblake redhat com +1-919-301-3266
Libvirt virtualization library http://libvirt.org
[-- Attachment #2: OpenPGP digital signature --]
[-- Type: application/pgp-signature, Size: 621 bytes --]
next prev parent reply other threads:[~2013-07-26 19:24 UTC|newest]
Thread overview: 20+ messages / expand[flat|nested] mbox.gz Atom feed top
2013-07-23 16:29 [Qemu-devel] [PATCH V3 for-1.6 0/5] Leaky bucket throttling and features Benoît Canet
2013-07-23 16:29 ` [Qemu-devel] [PATCH V3 for-1.6 1/5] block: Repair the throttling code Benoît Canet
2013-07-26 19:16 ` Eric Blake
2013-07-26 19:42 ` Alex Bligh
2013-07-23 16:29 ` [Qemu-devel] [PATCH V3 for-1.6 2/5] block: Modify the throttling code to implement the leaky bucket algorithm Benoît Canet
2013-07-26 3:40 ` Fam Zheng
2013-07-26 9:48 ` Benoît Canet
2013-07-23 16:29 ` [Qemu-devel] [PATCH V3 for-1.6 3/5] block: Add support for throttling burst threshold in QMP and the command line Benoît Canet
2013-07-26 3:07 ` Fam Zheng
2013-07-26 19:24 ` Eric Blake [this message]
2013-07-26 20:55 ` Benoît Canet
2013-08-08 13:37 ` Benoît Canet
2013-08-09 7:09 ` Kevin Wolf
2013-07-23 16:29 ` [Qemu-devel] [PATCH V3 for-1.6 4/5] block: Add iops_sector_count to do the iops accounting for a given io size Benoît Canet
2013-07-23 16:29 ` [Qemu-devel] [PATCH V3 for-1.6 5/5] block: Add throttling percentage metrics Benoît Canet
2013-07-26 2:55 ` Fam Zheng
2013-07-26 9:49 ` Benoît Canet
2013-07-25 12:08 ` [Qemu-devel] [PATCH V3 for-1.6 0/5] Leaky bucket throttling and features Fam Zheng
2013-07-25 12:16 ` Benoît Canet
2013-07-26 19:07 ` Eric Blake
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=51F2CCD6.2020107@redhat.com \
--to=eblake@redhat.com \
--cc=benoit@irqsave.net \
--cc=kwolf@redhat.com \
--cc=qemu-devel@nongnu.org \
--cc=stefanha@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).