From: Markus Armbruster <armbru@redhat.com>
To: qemu-devel@nongnu.org
Cc: kwolf@redhat.com, benoit.canet@nodalink.com, stefanha@redhat.com,
mreitz@redhat.com
Subject: [Qemu-devel] [PATCH v4 20/23] block/qapi: Convert qmp_query_block() to BlockBackend
Date: Tue, 30 Sep 2014 21:25:41 +0200 [thread overview]
Message-ID: <1412105144-532-21-git-send-email-armbru@redhat.com> (raw)
In-Reply-To: <1412105144-532-1-git-send-email-armbru@redhat.com>
Much more command code needs conversion. I start with this one
because it's using bdrv_dev_* functions, which I'm about to lift into
BlockBackend.
While there, give bdrv_query_info() internal linkage.
Signed-off-by: Markus Armbruster <armbru@redhat.com>
Reviewed-by: Benoît Canet <benoit.canet@nodalink.com>
Reviewed-by: Max Reitz <mreitz@redhat.com>
Reviewed-by: Kevin Wolf <kwolf@redhat.com>
---
block/qapi.c | 15 ++++++++-------
include/block/qapi.h | 3 ---
2 files changed, 8 insertions(+), 10 deletions(-)
diff --git a/block/qapi.c b/block/qapi.c
index d071ee5..fca981d 100644
--- a/block/qapi.c
+++ b/block/qapi.c
@@ -28,6 +28,7 @@
#include "qapi-visit.h"
#include "qapi/qmp-output-visitor.h"
#include "qapi/qmp/types.h"
+#include "sysemu/block-backend.h"
#ifdef __linux__
#include <linux/fs.h>
#include <sys/ioctl.h>
@@ -264,15 +265,15 @@ void bdrv_query_image_info(BlockDriverState *bs,
}
/* @p_info will be set only on success. */
-void bdrv_query_info(BlockDriverState *bs,
- BlockInfo **p_info,
- Error **errp)
+static void bdrv_query_info(BlockBackend *blk, BlockInfo **p_info,
+ Error **errp)
{
BlockInfo *info = g_malloc0(sizeof(*info));
+ BlockDriverState *bs = blk_bs(blk);
BlockDriverState *bs0;
ImageInfo **p_image_info;
Error *local_err = NULL;
- info->device = g_strdup(bdrv_get_device_name(bs));
+ info->device = g_strdup(blk_name(blk));
info->type = g_strdup("unknown");
info->locked = bdrv_dev_is_medium_locked(bs);
info->removable = bdrv_dev_has_removable_media(bs);
@@ -360,12 +361,12 @@ static BlockStats *bdrv_query_stats(const BlockDriverState *bs)
BlockInfoList *qmp_query_block(Error **errp)
{
BlockInfoList *head = NULL, **p_next = &head;
- BlockDriverState *bs = NULL;
+ BlockBackend *blk;
Error *local_err = NULL;
- while ((bs = bdrv_next(bs))) {
+ for (blk = blk_next(NULL); blk; blk = blk_next(blk)) {
BlockInfoList *info = g_malloc0(sizeof(*info));
- bdrv_query_info(bs, &info->value, &local_err);
+ bdrv_query_info(blk, &info->value, &local_err);
if (local_err) {
error_propagate(errp, local_err);
goto err;
diff --git a/include/block/qapi.h b/include/block/qapi.h
index 0374546..168d788 100644
--- a/include/block/qapi.h
+++ b/include/block/qapi.h
@@ -36,9 +36,6 @@ int bdrv_query_snapshot_info_list(BlockDriverState *bs,
void bdrv_query_image_info(BlockDriverState *bs,
ImageInfo **p_info,
Error **errp);
-void bdrv_query_info(BlockDriverState *bs,
- BlockInfo **p_info,
- Error **errp);
void bdrv_snapshot_dump(fprintf_function func_fprintf, void *f,
QEMUSnapshotInfo *sn);
--
1.9.3
next prev parent reply other threads:[~2014-09-30 19:26 UTC|newest]
Thread overview: 37+ messages / expand[flat|nested] mbox.gz Atom feed top
2014-09-30 19:25 [Qemu-devel] [PATCH v4 00/23] Split BlockBackend off BDS with an axe Markus Armbruster
2014-09-30 19:25 ` [Qemu-devel] [PATCH v4 01/23] block: Split bdrv_new_root() off bdrv_new() Markus Armbruster
2014-09-30 19:25 ` [Qemu-devel] [PATCH v4 02/23] block: New BlockBackend Markus Armbruster
2014-10-01 15:27 ` Max Reitz
2014-09-30 19:25 ` [Qemu-devel] [PATCH v4 03/23] block: Connect BlockBackend to BlockDriverState Markus Armbruster
2014-10-01 15:34 ` Max Reitz
2014-09-30 19:25 ` [Qemu-devel] [PATCH v4 04/23] block: Connect BlockBackend and DriveInfo Markus Armbruster
2014-10-01 15:52 ` Max Reitz
2014-09-30 19:25 ` [Qemu-devel] [PATCH v4 05/23] block: Code motion to get rid of stubs/blockdev.c Markus Armbruster
2014-09-30 19:25 ` [Qemu-devel] [PATCH v4 06/23] block: Make BlockBackend own its BlockDriverState Markus Armbruster
2014-09-30 19:25 ` [Qemu-devel] [PATCH v4 07/23] block: Eliminate bdrv_iterate(), use bdrv_next() Markus Armbruster
2014-09-30 19:25 ` [Qemu-devel] [PATCH v4 08/23] block: Eliminate BlockDriverState member device_name[] Markus Armbruster
2014-10-01 16:19 ` Max Reitz
2014-09-30 19:25 ` [Qemu-devel] [PATCH v4 09/23] block: Merge BlockBackend and BlockDriverState name spaces Markus Armbruster
2014-10-01 16:20 ` Max Reitz
2014-09-30 19:25 ` [Qemu-devel] [PATCH v4 10/23] block: Eliminate DriveInfo member bdrv, use blk_by_legacy_dinfo() Markus Armbruster
2014-09-30 19:25 ` [Qemu-devel] [PATCH v4 11/23] block: Rename BlockDriverAIOCB* to BlockAIOCB* Markus Armbruster
2014-10-01 16:50 ` Max Reitz
2014-10-02 7:03 ` Markus Armbruster
2014-09-30 19:25 ` [Qemu-devel] [PATCH v4 12/23] block: Rename BlockDriverCompletionFunc to BlockCompletionFunc Markus Armbruster
2014-10-01 16:55 ` Max Reitz
2014-10-02 7:12 ` Markus Armbruster
2014-09-30 19:25 ` [Qemu-devel] [PATCH v4 13/23] virtio-blk: Drop redundant VirtIOBlock member conf Markus Armbruster
2014-09-30 19:25 ` [Qemu-devel] [PATCH v4 14/23] virtio-blk: Rename VirtIOBlkConf variables to conf Markus Armbruster
2014-09-30 19:25 ` [Qemu-devel] [PATCH v4 15/23] hw: Convert from BlockDriverState to BlockBackend, mostly Markus Armbruster
2014-10-01 17:09 ` Max Reitz
2014-10-02 7:14 ` Markus Armbruster
2014-09-30 19:25 ` [Qemu-devel] [PATCH v4 16/23] ide: Complete conversion from BlockDriverState to BlockBackend Markus Armbruster
2014-09-30 19:25 ` [Qemu-devel] [PATCH v4 17/23] pc87312: Drop unused members of PC87312State Markus Armbruster
2014-09-30 19:25 ` [Qemu-devel] [PATCH v4 18/23] blockdev: Drop superfluous DriveInfo member id Markus Armbruster
2014-09-30 19:25 ` [Qemu-devel] [PATCH v4 19/23] blockdev: Fix blockdev-add not to create DriveInfo Markus Armbruster
2014-10-01 17:21 ` Max Reitz
2014-09-30 19:25 ` Markus Armbruster [this message]
2014-09-30 19:25 ` [Qemu-devel] [PATCH v4 21/23] blockdev: Convert qmp_eject(), qmp_change_blockdev() to BlockBackend Markus Armbruster
2014-09-30 19:25 ` [Qemu-devel] [PATCH v4 22/23] block: Lift device model API into BlockBackend Markus Armbruster
2014-09-30 19:25 ` [Qemu-devel] [PATCH v4 23/23] block: Make device model's references to BlockBackend strong Markus Armbruster
2014-10-01 17:22 ` Max Reitz
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=1412105144-532-21-git-send-email-armbru@redhat.com \
--to=armbru@redhat.com \
--cc=benoit.canet@nodalink.com \
--cc=kwolf@redhat.com \
--cc=mreitz@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).