qemu-devel
[Top][All Lists]
Advanced

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

Re: [Qemu-devel] [PATCH v2 for-2.4 3/3] hw/arm/virt: Make block devices


From: Markus Armbruster
Subject: Re: [Qemu-devel] [PATCH v2 for-2.4 3/3] hw/arm/virt: Make block devices default to virtio
Date: Thu, 25 Jun 2015 09:40:00 +0200
User-agent: Gnus/5.13 (Gnus v5.13) Emacs/24.3 (gnu/linux)

Peter Maydell <address@hidden> writes:

> Now we have virtio-pci, we can make the virt board's default block
> device type be IF_VIRTIO. This allows users to use simplified
> command lines that don't have to explicitly create virtio-pci-blk
> devices; the -hda &c very short options now also work.
>
> This means we also need to set no_cdrom to avoid getting a
> default cdrom device -- this is needed because the virtio-blk
> device will fail if it is connected to a block backend with
> no media, which is what the default cdrom device typically is.
> Providing a cdrom with media via -cdrom will still work.

It'll create a virtio-blk device with non-removable medium, won't it?

> Note that this change means that some command lines which used
> to work (by accident) will stop working. Where a drive was connected
> manually to a device but without 'if=none' being specified, we
> used to treat this as an IDE drive, which we would then not autoplug
> because the board doesn't support IDE. Now we will treat it as a
> virtio disk and autoplug it, which means the attempt to use the
> drive manually will fail:
>   qemu-system-arm: -drive file=img.qcow2,id=foo: Drive 'foo' is already
>   in use because it has been automatically connected to another device
>   (did you need 'if=none' in the drive options?)
> The command line will be changed to include 'if=none', as the

will have to be changed

> error message suggests.
>
> Signed-off-by: Peter Maydell <address@hidden>
> ---
>  hw/arm/virt.c | 2 ++
>  1 file changed, 2 insertions(+)
>
> diff --git a/hw/arm/virt.c b/hw/arm/virt.c
> index f1e85c8..7e643ba 100644
> --- a/hw/arm/virt.c
> +++ b/hw/arm/virt.c
> @@ -966,6 +966,8 @@ static void virt_class_init(ObjectClass *oc, void *data)
>      mc->init = machvirt_init;
>      mc->max_cpus = 8;
>      mc->has_dynamic_sysbus = true;
> +    mc->block_default_type = IF_VIRTIO;
> +    mc->no_cdrom = 1;
>  }
>  
>  static const TypeInfo machvirt_info = {



reply via email to

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