[libvirt] [PATCH 2/3] qemu: Fix specifying char devs for PPC

Hong-Hua.Yin at freescale.com Hong-Hua.Yin at freescale.com
Tue May 27 05:48:53 UTC 2014


Hi Jan,

Thanks for comments. Could you please help review the v2 patches?

Best Regards,
Olivia

> -----Original Message-----
> From: Ján Tomko [mailto:jtomko at redhat.com]
> Sent: Monday, May 26, 2014 7:37 PM
> To: Yin Olivia-R63875; libvir-list at redhat.com
> Subject: Re: [libvirt] [PATCH 2/3] qemu: Fix specifying char devs for PPC
> 
> On 05/22/2014 12:55 PM, Olivia Yin wrote:
> > QEMU ppce500 board uses the old style -serial options.
> >
> > Other PPC boards don't give any way to explicitly wire in a -chardev
> > except pseries which uses -device spapr-vty with -chardev.
> > ---
> >  src/qemu/qemu_capabilities.c | 10 +++++++---
> >  1 file changed, 7 insertions(+), 3 deletions(-)
> >
> 
> I think this would be easier to read as:
> 
> if (arch == ARM) {
>    /* arm-specific code */
> } else if (arch == PPC) {
>    /* ppc-specific code */
> }
> 
> return true;
> 
> > diff --git a/src/qemu/qemu_capabilities.c
> > b/src/qemu/qemu_capabilities.c index 03d8842..1cc37ad 100644
> > --- a/src/qemu/qemu_capabilities.c
> > +++ b/src/qemu/qemu_capabilities.c
> > @@ -3466,13 +3466,17 @@ virQEMUCapsSupportsChardev(virDomainDefPtr def,
> >          !virQEMUCapsGet(qemuCaps, QEMU_CAPS_DEVICE))
> >          return false;
> >
> > -    if ((def->os.arch != VIR_ARCH_ARMV7L) && (def->os.arch !=
> VIR_ARCH_AARCH64))
> > +    if ((def->os.arch != VIR_ARCH_ARMV7L) && (def->os.arch !=
> VIR_ARCH_AARCH64)
> > +         && (def->os.arch != VIR_ARCH_PPC) && (def->os.arch !=
> > + VIR_ARCH_PPC64))
> >          return true;
> >
> >      /* This may not be true for all ARM machine types, but at least
> >       * the only supported non-virtio serial devices of vexpress and
> versatile
> > -     * don't have the -chardev property wired up. */
> > +     * don't have the -chardev property wired up.
> > +     * For PPC machines, only pseries need -device spapr-vty with
> > + -chardev */
> >      return (chr->info.type == VIR_DOMAIN_DEVICE_ADDRESS_TYPE_VIRTIO_MMIO
> ||
> >              (chr->deviceType == VIR_DOMAIN_CHR_DEVICE_TYPE_CONSOLE &&
> > -             chr->targetType ==
> VIR_DOMAIN_CHR_CONSOLE_TARGET_TYPE_VIRTIO));
> > +             chr->targetType ==
> VIR_DOMAIN_CHR_CONSOLE_TARGET_TYPE_VIRTIO) ||
> > +            (chr->deviceType == VIR_DOMAIN_CHR_DEVICE_TYPE_SERIAL &&
> > +             chr->info.type ==
> > + VIR_DOMAIN_DEVICE_ADDRESS_TYPE_SPAPRVIO));
> >  }
> >
> 
> Jan





More information about the libvir-list mailing list