[libvirt] [PATCH 06/12] qemu: add id when build RNG device and rename object id

Peter Krempa pkrempa at redhat.com
Mon Jan 5 14:51:02 UTC 2015


On 01/03/15 06:06, Luyao Huang wrote:
> We didn't set a id when we build RNG device cmdline before.
> Give a id to every RNG device and we can hotunplug it via
> QMP cmd device_del.
> 
> Signed-off-by: Luyao Huang <lhuang at redhat.com>
> ---
>  src/qemu/qemu_command.c | 12 ++++++------
>  1 file changed, 6 insertions(+), 6 deletions(-)
> 
> diff --git a/src/qemu/qemu_command.c b/src/qemu/qemu_command.c
> index 46e289d..a4073ee 100644
> --- a/src/qemu/qemu_command.c
> +++ b/src/qemu/qemu_command.c
> @@ -5761,7 +5761,7 @@ qemuBuildRNGBackendArgs(virCommandPtr cmd,
>              goto cleanup;
>          }
>  
> -        virBufferAsprintf(&buf, "rng-random,id=%s,filename=%s",
> +        virBufferAsprintf(&buf, "rng-random,id=obj%s,filename=%s",
>                            dev->info.alias, dev->source.file);
>  
>          virCommandAddArg(cmd, "-object");
> @@ -5784,7 +5784,7 @@ qemuBuildRNGBackendArgs(virCommandPtr cmd,
>          virCommandAddArgList(cmd, "-chardev", backend, NULL);
>  
>          virCommandAddArg(cmd, "-object");
> -        virCommandAddArgFormat(cmd, "rng-egd,chardev=char%s,id=%s",
> +        virCommandAddArgFormat(cmd, "rng-egd,chardev=char%s,id=obj%s",
>                                 dev->info.alias, dev->info.alias);
>          break;
>  
> @@ -5816,13 +5816,13 @@ qemuBuildRNGDevStr(virDomainDefPtr def,
>      }
>  
>      if (dev->info.type == VIR_DOMAIN_DEVICE_ADDRESS_TYPE_CCW)
> -        virBufferAsprintf(&buf, "virtio-rng-ccw,rng=%s", dev->info.alias);
> +        virBufferAsprintf(&buf, "virtio-rng-ccw,rng=obj%s,id=%s", dev->info.alias, dev->info.alias);
>      else if (dev->info.type == VIR_DOMAIN_DEVICE_ADDRESS_TYPE_VIRTIO_S390)
> -        virBufferAsprintf(&buf, "virtio-rng-s390,rng=%s", dev->info.alias);
> +        virBufferAsprintf(&buf, "virtio-rng-s390,rng=obj%s,id=%s", dev->info.alias, dev->info.alias);
>      else if (dev->info.type == VIR_DOMAIN_DEVICE_ADDRESS_TYPE_VIRTIO_MMIO)
> -        virBufferAsprintf(&buf, "virtio-rng-device,rng=%s", dev->info.alias);
> +        virBufferAsprintf(&buf, "virtio-rng-device,rng=obj%s,id=%s", dev->info.alias, dev->info.alias);
>      else
> -        virBufferAsprintf(&buf, "virtio-rng-pci,rng=%s", dev->info.alias);
> +        virBufferAsprintf(&buf, "virtio-rng-pci,rng=obj%s,id=%s", dev->info.alias, dev->info.alias);
>  
>      if (dev->rate > 0) {
>          virBufferAsprintf(&buf, ",max-bytes=%u", dev->rate);
> 


This breaks the testsuite as you didn't fix the expected outputs after
such a change. Please always run "make check" before posting patches.

Additional question. Is this change even necessary? The RNG device does
have it's alias already whithout the "obj" prefix ... thus it's just
"rng0" for example.

NACK unless you have a good reason for the change.

Peter

-------------- next part --------------
A non-text attachment was scrubbed...
Name: signature.asc
Type: application/pgp-signature
Size: 819 bytes
Desc: OpenPGP digital signature
URL: <http://listman.redhat.com/archives/libvir-list/attachments/20150105/f42ce2f7/attachment-0001.sig>


More information about the libvir-list mailing list