From mboxrd@z Thu Jan 1 00:00:00 1970 Received: from eggs.gnu.org ([140.186.70.92]:50745) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1QJN7s-0003HR-60 for qemu-devel@nongnu.org; Mon, 09 May 2011 05:51:41 -0400 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1QJN7q-0000E9-A0 for qemu-devel@nongnu.org; Mon, 09 May 2011 05:51:40 -0400 Received: from oxygen.pond.sub.org ([213.239.205.148]:50344) by eggs.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1QJN7q-0000DZ-1M for qemu-devel@nongnu.org; Mon, 09 May 2011 05:51:38 -0400 From: Markus Armbruster Date: Mon, 9 May 2011 11:51:32 +0200 Message-Id: <1304934694-13432-4-git-send-email-armbru@redhat.com> In-Reply-To: <1304934694-13432-1-git-send-email-armbru@redhat.com> References: <1304934694-13432-1-git-send-email-armbru@redhat.com> Subject: [Qemu-devel] [PATCH v2 3/5] block QMP: Drop query-block member "type" (type= in info block) List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , To: qemu-devel@nongnu.org Cc: kwolf@redhat.com, kraxel@redhat.com, hch@lst.de Its value is unreliable: a block device used as floppy has type "floppy" if created with if=floppy, but type "hd" if created with if=none. That's because with if=none, the type is at best a declaration of intent: the drive can be connected to any guest device. Its type is really the guest device's business. Reporting it here is wrong. Signed-off-by: Markus Armbruster --- block.c | 20 +++----------------- qmp-commands.hx | 6 ------ 2 files changed, 3 insertions(+), 23 deletions(-) diff --git a/block.c b/block.c index f731c7a..c6dc42a 100644 --- a/block.c +++ b/block.c @@ -1704,9 +1704,8 @@ static void bdrv_print_dict(QObject *obj, void *opaque) bs_dict = qobject_to_qdict(obj); - monitor_printf(mon, "%s: type=%s removable=%d", + monitor_printf(mon, "%s: removable=%d", qdict_get_str(bs_dict, "device"), - qdict_get_str(bs_dict, "type"), qdict_get_bool(bs_dict, "removable")); if (qdict_get_bool(bs_dict, "removable")) { @@ -1747,23 +1746,10 @@ void bdrv_info(Monitor *mon, QObject **ret_data) QTAILQ_FOREACH(bs, &bdrv_states, list) { QObject *bs_obj; - const char *type = "unknown"; - - switch(bs->type) { - case BDRV_TYPE_HD: - type = "hd"; - break; - case BDRV_TYPE_CDROM: - type = "cdrom"; - break; - case BDRV_TYPE_FLOPPY: - type = "floppy"; - break; - } - bs_obj = qobject_from_jsonf("{ 'device': %s, 'type': %s, " + bs_obj = qobject_from_jsonf("{ 'device': %s, " "'removable': %i, 'locked': %i }", - bs->device_name, type, bs->removable, + bs->device_name, bs->removable, bs->locked); if (bs->drv) { diff --git a/qmp-commands.hx b/qmp-commands.hx index fbd98ee..b1c8206 100644 --- a/qmp-commands.hx +++ b/qmp-commands.hx @@ -1038,8 +1038,6 @@ is a json-array of all devices. Each json-object contain the following: - "device": device name (json-string) -- "type": device type (json-string) - - Possible values: "hd", "cdrom", "floppy", "unknown" - "removable": true if the device is removable, false otherwise (json-bool) - "locked": true if the device is locked, false otherwise (json-bool) - "inserted": only present if the device is inserted, it is a json-object @@ -1070,25 +1068,21 @@ Example: "encrypted":false, "file":"disks/test.img" }, - "type":"hd" }, { "device":"ide1-cd0", "locked":false, "removable":true, - "type":"cdrom" }, { "device":"floppy0", "locked":false, "removable":true, - "type": "floppy" }, { "device":"sd0", "locked":false, "removable":true, - "type":"floppy" } ] } -- 1.7.2.3