qemu-devel.nongnu.org archive mirror
 help / color / mirror / Atom feed
From: "Benoît Canet" <benoit@irqsave.net>
To: qemu-devel@nongnu.org
Cc: kwolf@redhat.com, "Benoît Canet" <benoit@irqsave.net>,
	stefanha@redhat.com
Subject: [Qemu-devel] [PATCH V3 for-1.6 0/5] Leaky bucket throttling and features
Date: Tue, 23 Jul 2013 18:29:23 +0200	[thread overview]
Message-ID: <1374596968-20181-1-git-send-email-benoit@irqsave.net> (raw)

The first patch fixes the throttling which was broken by a previous commit.

The next patch replace the existing throttling algorithm by the well described
leaky bucket algorithm.

Third patch implement bursting by adding *_threshold parameters to
qmp_block_set_io_throttle.

The last one allow to define the max size of an io when throttling by iops via
iops_sector_count to avoid vm users cheating on the iops limit.

The last patch adds a metric reflecting how much the I/O are throttled.

since v1:
    Add throttling percentage metric [Benoît]

since v2:
    Enable timer only during I/O activity [Stefan]
    Mark function as coroutine_fn [Stefan]
    Guard these function checking they are in a coroutine [Stefan]
    Use defines to access buckets [Stefan]
    Fix typo [Stefan]
    reset throttling metric on iddle [Benoît]
    rename invalid to check_io_limit [Stefan]

Benoît Canet (5):
  block: Repair the throttling code.
  block: Modify the throttling code to implement the leaky bucket
    algorithm.
  block: Add support for throttling burst threshold in QMP and the
    command line.
  block: Add iops_sector_count to do the iops accounting for a given io
    size.
  block: Add throttling percentage metrics.

 block.c                   |  493 ++++++++++++++++++++++++++++-----------------
 block/qapi.c              |   32 +++
 blockdev.c                |  174 ++++++++++++++--
 hmp.c                     |   38 +++-
 include/block/block_int.h |   18 +-
 include/block/coroutine.h |    9 +-
 qapi-schema.json          |   42 +++-
 qemu-coroutine-lock.c     |   20 +-
 qemu-options.hx           |    2 +-
 qmp-commands.hx           |   34 +++-
 10 files changed, 642 insertions(+), 220 deletions(-)

-- 
1.7.10.4

             reply	other threads:[~2013-07-23 16:27 UTC|newest]

Thread overview: 20+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2013-07-23 16:29 Benoît Canet [this message]
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
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=1374596968-20181-1-git-send-email-benoit@irqsave.net \
    --to=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).