From mboxrd@z Thu Jan 1 00:00:00 1970 Received: from eggs.gnu.org ([2001:4830:134:3::10]:32886) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1dQb6U-0008UJ-61 for qemu-devel@nongnu.org; Thu, 29 Jun 2017 11:11:35 -0400 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1dQb6T-00031m-Bs for qemu-devel@nongnu.org; Thu, 29 Jun 2017 11:11:34 -0400 Received: from mail-wr0-x243.google.com ([2a00:1450:400c:c0c::243]:35217) by eggs.gnu.org with esmtps (TLS1.0:RSA_AES_128_CBC_SHA1:16) (Exim 4.71) (envelope-from ) id 1dQb6T-00031J-5H for qemu-devel@nongnu.org; Thu, 29 Jun 2017 11:11:33 -0400 Received: by mail-wr0-x243.google.com with SMTP id z45so37152609wrb.2 for ; Thu, 29 Jun 2017 08:11:33 -0700 (PDT) From: Pradeep Jagadeesh Date: Thu, 29 Jun 2017 11:10:54 -0400 Message-Id: <1498749056-38565-5-git-send-email-pradeep.jagadeesh@huawei.com> In-Reply-To: <1498749056-38565-1-git-send-email-pradeep.jagadeesh@huawei.com> References: <1498749056-38565-1-git-send-email-pradeep.jagadeesh@huawei.com> Subject: [Qemu-devel] [PATCH v6 4/6] hmp: create a throttle initialization function List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , To: eric blake , greg kurz Cc: Pradeep Jagadeesh , alberto garcia , "Dr. David Alan Gilbert" , jani kokkonen , qemu-devel@nongnu.org This patch creates a throttle initialization function to maximize the code reusability. The same code is also used by fsdev. Signed-off-by: Pradeep Jagadeesh --- hmp.c | 21 +++++++++++++++------ 1 file changed, 15 insertions(+), 6 deletions(-) diff --git a/hmp.c b/hmp.c index 8c72c58..220d301 100644 --- a/hmp.c +++ b/hmp.c @@ -1749,20 +1749,29 @@ void hmp_change(Monitor *mon, const QDict *qdict) hmp_handle_error(mon, &err); } +static void hmp_initialize_io_throttle(IOThrottle *iot, const QDict *qdict) +{ + iot->has_id = true; + iot->id = (char *) qdict_get_str(qdict, "id"); + iot->bps = qdict_get_int(qdict, "bps"); + iot->bps_rd = qdict_get_int(qdict, "bps_rd"); + iot->bps_wr = qdict_get_int(qdict, "bps_wr"); + iot->iops = qdict_get_int(qdict, "iops"); + iot->iops_rd = qdict_get_int(qdict, "iops_rd"); + iot->iops_wr = qdict_get_int(qdict, "iops_wr"); +} + void hmp_block_set_io_throttle(Monitor *mon, const QDict *qdict) { Error *err = NULL; + IOThrottle *iothrottle; BlockIOThrottle throttle = { .has_device = true, .device = (char *) qdict_get_str(qdict, "device"), - .bps = qdict_get_int(qdict, "bps"), - .bps_rd = qdict_get_int(qdict, "bps_rd"), - .bps_wr = qdict_get_int(qdict, "bps_wr"), - .iops = qdict_get_int(qdict, "iops"), - .iops_rd = qdict_get_int(qdict, "iops_rd"), - .iops_wr = qdict_get_int(qdict, "iops_wr"), }; + iothrottle = qapi_BlockIOThrottle_base(&throttle); + hmp_initialize_io_throttle(iothrottle, qdict); qmp_block_set_io_throttle(&throttle, &err); hmp_handle_error(mon, &err); } -- 1.8.3.1