This patches provide qmp interface to query/set io throttle parameters of a fsdev. Some of patches also refactor the code and structure that was present in block and fsdev files.
xiezhide (4): fsdev-throttle-qmp: factor out throttle code to reuse code fsdev-throttle-qmp: move struct ThrottleLimits to new file fsdev-throttle-qmp: qmp interface for fsdev io throttling fsdev-throttle-qmp: hmp interface for fsdev io throttling Makefile | 18 ++++ Makefile.objs | 8 ++ block/throttle.c | 6 +- blockdev.c | 94 +--------------- fsdev/qemu-fsdev-dummy.c | 11 ++ fsdev/qemu-fsdev-throttle.c | 142 +++++++++++++++--------- fsdev/qemu-fsdev-throttle.h | 6 +- fsdev/qemu-fsdev.c | 29 +++++ hmp-commands-info.hx | 15 +++ hmp-commands.hx | 15 +++ hmp.c | 83 +++++++++++++-- hmp.h | 4 + include/qemu/throttle-options.h | 2 + include/qemu/throttle.h | 4 +- include/qemu/typedefs.h | 1 + qapi/block-core.json | 122 +-------------------- qapi/fsdev.json | 96 +++++++++++++++++ qapi/qapi-schema.json | 2 + qapi/tlimits.json | 89 ++++++++++++++++ qmp.c | 13 +++ util/throttle.c | 231 ++++++++++++++++++++++++++-------------- 21 files changed, 635 insertions(+), 356 deletions(-) create mode 100644 qapi/fsdev.json create mode 100644 qapi/tlimits.json v0 -> v1: Addressed comments from Eric Blake and Greg Kurz. Fix patch corrupt issue due to email client change the patch format with copy-to-paster Break patch to patches v1 -> v2: Addressed comments from Greg Kurz. send patch with outlook,patch corrupted, resend with git send-email v2 -> v3: Addressed comments from Eric Blake. split patch1 into two patches v3 -> v4: Fix issue cause test failed on centos and fedora -- 1.8.3.1