qemu-devel
[Top][All Lists]
Advanced

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

Re: [Qemu-devel] [PATCH 09/10] qga: added bus type and disk location pat


From: Eric Blake
Subject: Re: [Qemu-devel] [PATCH 09/10] qga: added bus type and disk location path
Date: Fri, 19 Jun 2015 11:10:07 -0600
User-agent: Mozilla/5.0 (X11; Linux x86_64; rv:31.0) Gecko/20100101 Thunderbird/31.7.0

On 06/19/2015 10:57 AM, Denis V. Lunev wrote:
> From: Olga Krishtal <address@hidden>
> 
> According to Microsoft disk location path can be obtained via
> IOCTL_SCSI_GET_ADDRESS. Unfortunately this ioctl can not be used for all
> devices. There are certain bus types which could be obtained with this
> API. Please refer to the following link for more details
> https://technet.microsoft.com/en-us/library/ee851589(v=ws.10).aspx
> 
> Bus type could be obtained using IOCTL_STORAGE_QUERY_PROPERTY. Enum
> STORAGE_BUS_TYPE describes all buses supported by OS.
> 
> Windows defines more bus types that Linux. Thus some values have been added

s/that/than/

> to GuestDiskBusType.
> 
> Signed-off-by: Olga Krishtal <address@hidden>
> Signed-off-by: Denis V. Lunev <address@hidden>
> CC: Eric Blake <address@hidden>
> CC: Michael Roth <address@hidden>
> ---
>  qga/commands-win32.c | 127 
> ++++++++++++++++++++++++++++++++++++++++++++++++++-
>  qga/qapi-schema.json |  15 +++++-
>  2 files changed, 139 insertions(+), 3 deletions(-)
> 

> +static WinToLin buses[] = {
> +    {BusTypeUnknown, GUEST_DISK_BUS_TYPE_UNKNOWN},
> +    {BusTypeScsi, GUEST_DISK_BUS_TYPE_SCSI},
> +    {BusTypeAtapi, GUEST_DISK_BUS_TYPE_IDE},
> +    {BusTypeAta, GUEST_DISK_BUS_TYPE_IDE},
> +    {BusType1394, GUEST_DISK_BUS_TYPE_1394},
> +    {BusTypeSsa, GUEST_DISK_BUS_TYPE_SSA},
> +    {BusTypeFibre, GUEST_DISK_BUS_TYPE_SSA},
> +    {BusTypeUsb, GUEST_DISK_BUS_TYPE_USB},
> +    {BusTypeRAID, GUEST_DISK_BUS_TYPE_RAID},
> +#if (_WIN32_WINNT >= 0x0600)
> +    {BusTypeiScsi, GUEST_DISK_BUS_TYPE_I_SCSI},
> +    {BusTypeSas, GUEST_DISK_BUS_TYPE_SAS},
> +    {BusTypeSata, GUEST_DISK_BUS_TYPE_SATA},
> +    {BusTypeSd, GUEST_DISK_BUS_TYPE_SD},
> +    {BusTypeMmc, GUEST_DISK_BUS_TYPE_MMC},
> +    {BusTypeVirtual, GUEST_DISK_BUS_TYPE_VIRTUAL },
> +    {BusTypeFileBackedVirtuaul, GUEST_DISK_BUS_TYPE_FBIRTUAL},
> +    {BusTypeSpaces, GUEST_DISK_BUS_TYPE_SPACES}
> +#endif

I'd use a trailing comma, so that future additions can be pure additions
rather than amending existing lines.


> +++ b/qga/qapi-schema.json
> @@ -711,6 +711,7 @@
>  # @GuestDiskBusType
>  #
>  # An enumeration of bus type of disks
> +# is devided a bit on Linux and Windows guest
>  #

s/devided/divided/

>  # @ide: IDE disks
>  # @fdc: floppy disks
> @@ -721,12 +722,22 @@
>  # @uml: UML disks
>  # @sata: SATA disks
>  # @sd: SD cards
> -#
> +# @Unknown: Unknown bus type
> +# @1394: Win IEEE 1394 bus type
> +# @Ssa: Win SSA bus type
> +# @Fibre: Win fiber channel bus type
> +# @Raid: Win RAID bus type
> +# @iScsi: Win iScsi bus type
> +# @Sas: Win serial-attaches SCSI bus type
> +# @Mmc: Win multimedia card (MMC) bus type
> +# @Virtual: Win virtual bus type
> +# @FB: Win file-backed bus type
>  # Since: 2.2

Missing information about when elements were added: simplest (but
redundant) by adding '(since 2.4)' everywhere, or shorter (but might
cause grief down the road if we try to automate doc generation) by doing
something like:

# Since: 2.2; 'Unknown' and all later entries since 2.4

>  ##
>  { 'enum': 'GuestDiskBusType',
>    'data': [ 'ide', 'fdc', 'scsi', 'virtio', 'xen', 'usb', 'uml', 'sata',
> -            'sd' ] }
> +            'sd', 'unknown', '1394','Ssa', 'fibre', 'RAID', 'iScsi', 'sas',

Uggh - '1394' is a purely numeric enum name.  Not the first time (so the
qapi generator allows it), but we considered blacklisting future
additions of it:
https://lists.gnu.org/archive/html/qemu-devel/2015-05/msg00229.html

-- 
Eric Blake   eblake redhat com    +1-919-301-3266
Libvirt virtualization library http://libvirt.org

Attachment: signature.asc
Description: OpenPGP digital signature


reply via email to

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