All of lore.kernel.org
 help / color / mirror / Atom feed
* [Qemu-devel] [PATCH V11 0/5] Continuous Leaky Bucket Throttling
@ 2013-09-01 16:39 Benoît Canet
  2013-09-01 16:39 ` [Qemu-devel] [PATCH V11 1/5] throttle: Add a new throttling API implementing continuous leaky bucket Benoît Canet
                   ` (4 more replies)
  0 siblings, 5 replies; 14+ messages in thread
From: Benoît Canet @ 2013-09-01 16:39 UTC (permalink / raw)
  To: qemu-devel; +Cc: kwolf, Benoît Canet, stefanha, stefanha, pbonzini

This patchset implement continous leaky bucket throttling.

It use two requests queue to enable to do silly unbalanced throttling like
block_set_io_throttle 0 0 0 0 6000 1

It use two timer to get the timer callbacks and the throttle.c code simple

v11:
   Reapplied Eric's reviewed by (they are precious)

v10:
   Rebased on top of Eric latest patch (merged in qemu-trivial-next)

v9:
   Apply Reviewed-By by Eric
   Rebased on top of "qmp: fix integer usage in examples" by Eric (Please apply it
first)

v8:

   rearm timer only when it's not pending [Stefan]
   Schedule next request right after accouting it [Stefan]

v7:
   honor max values if specified [Paolo]
   s/cfg/Linux CFQ/ [Stefan]
   revert throttle_get_config to it's old prototype [Stefan]
   s/size/@size/ [Stefan]
   s/acccount/account/ [Stefan]
   remove tracked_request_end uneeded hunk [Stefan]
   Spaces before (json-int)s [Stefan]
*** BLURB HERE ***

Benoît Canet (5):
  throttle: Add a new throttling API implementing continuous leaky
    bucket.
  throttle: Add units tests
  block: Enable the new throttling code in the block layer.
  block: Add support for throttling burst max in QMP and the command
    line.
  block: Add iops_size to do the iops accounting for a given io size.

 block.c                   |  338 +++++++++----------------------
 block/qapi.c              |   50 +++--
 blockdev.c                |  205 ++++++++++++++-----
 hmp.c                     |   36 +++-
 include/block/block.h     |    1 -
 include/block/block_int.h |   32 +--
 include/qemu/throttle.h   |  103 ++++++++++
 qapi-schema.json          |   40 +++-
 qemu-options.hx           |    4 +-
 qmp-commands.hx           |   32 ++-
 tests/Makefile            |    2 +
 tests/test-throttle.c     |  481 +++++++++++++++++++++++++++++++++++++++++++++
 util/Makefile.objs        |    1 +
 util/throttle.c           |  396 +++++++++++++++++++++++++++++++++++++
 14 files changed, 1383 insertions(+), 338 deletions(-)
 create mode 100644 include/qemu/throttle.h
 create mode 100644 tests/test-throttle.c
 create mode 100644 util/throttle.c

-- 
1.7.10.4

^ permalink raw reply	[flat|nested] 14+ messages in thread

end of thread, other threads:[~2013-09-02 16:04 UTC | newest]

Thread overview: 14+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2013-09-01 16:39 [Qemu-devel] [PATCH V11 0/5] Continuous Leaky Bucket Throttling Benoît Canet
2013-09-01 16:39 ` [Qemu-devel] [PATCH V11 1/5] throttle: Add a new throttling API implementing continuous leaky bucket Benoît Canet
2013-09-02  3:08   ` Fam Zheng
2013-09-02 10:16     ` Benoît Canet
2013-09-02 15:34       ` Paolo Bonzini
2013-09-02 16:06         ` Benoît Canet
2013-09-01 16:39 ` [Qemu-devel] [PATCH V11 2/5] throttle: Add units tests Benoît Canet
2013-09-01 16:39 ` [Qemu-devel] [PATCH V11 3/5] block: Enable the new throttling code in the block layer Benoît Canet
2013-09-02  2:24   ` Fam Zheng
2013-09-02 10:19     ` Benoît Canet
2013-09-01 16:39 ` [Qemu-devel] [PATCH V11 4/5] block: Add support for throttling burst max in QMP and the command line Benoît Canet
2013-09-02  2:50   ` Fam Zheng
2013-09-02 11:49     ` Benoît Canet
2013-09-01 16:39 ` [Qemu-devel] [PATCH V11 5/5] block: Add iops_size to do the iops accounting for a given io size Benoît Canet

This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.