qemu-devel
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[Qemu-devel] Re: [PATCH 4/8] block QMP: Drop query-block member "type" (


From: Kevin Wolf
Subject: [Qemu-devel] Re: [PATCH 4/8] block QMP: Drop query-block member "type" (type= in info block)
Date: Tue, 06 Jul 2010 18:39:53 +0200
User-agent: Mozilla/5.0 (X11; U; Linux x86_64; en-US; rv:1.9.1.9) Gecko/20100430 Fedora/3.0.4-2.fc12 Thunderbird/3.0.4

Am 06.07.2010 14:37, schrieb Markus Armbruster:
> 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 <address@hidden>

Dan, I'd like to have your Acked-by for this patch before applying it.
Can libvirt handle such a change in the monitor output, or does it even
use info block?

Kevin

> ---
>  block.c         |   20 +++-----------------
>  qemu-monitor.hx |    6 ------
>  2 files changed, 3 insertions(+), 23 deletions(-)
> 
> diff --git a/block.c b/block.c
> index 65cf4dc..6d419b9 100644
> --- a/block.c
> +++ b/block.c
> @@ -1533,9 +1533,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")) {
> @@ -1576,23 +1575,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/qemu-monitor.hx b/qemu-monitor.hx
> index 9f62b94..6ba8abc 100644
> --- a/qemu-monitor.hx
> +++ b/qemu-monitor.hx
> @@ -1723,8 +1723,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
> @@ -1755,25 +1753,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"
>           }
>        ]
>     }




reply via email to

[Prev in Thread] Current Thread [Next in Thread]