[libvirt] [PATCH v2] virsh domxml-from-native to treat SCSI as the bus type for pseries by default

Shivaprasad bhat shivaprasadbhat at gmail.com
Fri Nov 15 13:39:43 UTC 2013


Thanks Cole. There are some changes to the patch. Next patch I'll try to
add.

Thanks,
Shiva


On Thu, Nov 14, 2013 at 7:31 PM, Cole Robinson <crobinso at redhat.com> wrote:

> On 11/14/2013 04:11 AM, Shivaprasad bhat wrote:
> > Thanks Cole.
> >
> > The change is to correct the IDE disk type to SCSI on pseries systems for
> > domxml-from-native.
> >
> > Here is the test case and results.
> >
> > sh# cat cmd.txt
> > *qemu-system-ppc64 -M pseries -m 4096 -nographic -enable-kvm -hda
> > /data/images/rhel70.qcow2 -name rhel70 -cdrom
> > /data/iso/RHEL-7.0-20130306.0-Server-ppc64-dvd1.iso -boot d -vnc :30*
> >
> > sh# ./run tools/*virsh domxml-from-native qemu-argv cmd.txt*
> > <domain type='kvm'>
> >   <name>rhel70</name>
> >   <uuid>eae019ae-a155-4dd8-be21-f9738b6aedea</uuid>
> >   <memory unit='KiB'>4194304</memory>
> >   <currentMemory unit='KiB'>4194304</currentMemory>
> >   <vcpu placement='static'>1</vcpu>
> >   <os>
> >     <type arch='ppc64' machine='pseries'>hvm</type>
> >     <boot dev='cdrom'/>
> >   </os>
> >   <clock offset='utc'/>
> >   <on_poweroff>destroy</on_poweroff>
> >   <on_reboot>restart</on_reboot>
> >   <on_crash>destroy</on_crash>
> >   <devices>
> >     <emulator>qemu-system-ppc64</emulator>
> >     <disk type='file' device='disk'>
> >       <driver name='qemu' type='raw'/>
> >       <source file='/data/images/rhel70.qcow2'/>
> > *      <target dev='hda' bus='scsi'/>                    //----> ide is
> > changed to SCSI*
> >       <address type='drive' controller='0' bus='0' target='0' unit='0'/>
> >     </disk>
> >     <disk type='file' device='cdrom'>
> >       <driver name='qemu' type='raw'/>
> >       <source
> file='/data/iso/RHEL-7.0-20130306.0-Server-ppc64-dvd1.iso'/>
> > *      <target dev='hdc' bus='scsi'/>                 //----> ide is
> changed
> > to SCSI*
> >       <readonly/>
> >       <address type='drive' controller='0' bus='1' target='0' unit='0'/>
> >     </disk>
> >   *  <controller type='scsi' index='0'/>             //----> Controller
> ide
> > also changed to SCSI*
> >     <controller type='usb' index='0'/>
> >     <controller type='pci' index='0' model='pci-root'/>
> >     <input type='mouse' bus='ps2'/>
> >     <graphics type='vnc' port='5930' autoport='no' listen=''>
> >       <listen type='address' address=''/>
> >     </graphics>
> >     <video>
> >       <model type='cirrus' vram='9216' heads='1'/>
> >     </video>
> >     <memballoon model='virtio'/>
> >   </devices>
> > </domain>
> > sh#
> >
>
> Thanks, but what I meant was to add an automated test case under the tests/
> directory that demonstrates what is actually fixed. See
> tests/qemuargv2xmltest.c, will require appropriate *.args and *.xml files
> in
> tests/qemuxml2argvdata/
>
> - Cole
>
> >
> >
> > On Thu, Nov 14, 2013 at 3:02 AM, Cole Robinson <crobinso at redhat.com
> > <mailto:crobinso at redhat.com>> wrote:
> >
> >     On 11/13/2013 04:31 PM, Shivaprasad bhat wrote:
> >     > Hi Jan, Cole,
> >     >
> >     > Could you please reviewing my patch ?
> >     >
> >     > Thanks,
> >     > Shiva
> >     >
> >
> >     I'd recommend adding a test case that demonstrates what exactly this
> is
> >     changing.
> >
> >     - Cole
> >
> >     >
> >     > On Wed, Oct 30, 2013 at 1:37 PM, Shivaprasad bhat
> >     <shivaprasadbhat at gmail.com <mailto:shivaprasadbhat at gmail.com>
> >     > <mailto:shivaprasadbhat at gmail.com <mailto:
> shivaprasadbhat at gmail.com>>>
> >     wrote:
> >     >
> >     >     Hi,
> >     >
> >     >     Could someone please help reviewing the patch ?
> >     >
> >     >     Thanks and Regards,
> >     >     Shiva
> >     >
> >     >
> >     >     On Mon, Oct 28, 2013 at 2:50 PM, Shivaprasad G Bhat
> >     >     <shivaprasadbhat at gmail.com <mailto:shivaprasadbhat at gmail.com>
> >     <mailto:shivaprasadbhat at gmail.com <mailto:shivaprasadbhat at gmail.com>>>
> wrote:
> >     >
> >     >         The bus type IDE being enum Zero, the bus type on pseries
> system
> >     >         appears as IDE for all the disk types. Pseries platform
> needs
> >     this to
> >     >         appear as SCSI instead of IDE.
> >     >
> >     >         Signed-off-by: Shivaprasad G Bhat <
> sbhat at linux.vnet.ibm.com
> >     <mailto:sbhat at linux.vnet.ibm.com>
> >     >         <mailto:sbhat at linux.vnet.ibm.com <mailto:
> sbhat at linux.vnet.ibm.com>>>
> >     >         ---
> >     >          src/qemu/qemu_domain.c |   11 +++++++++++
> >     >          1 file changed, 11 insertions(+)
> >     >
> >     >         diff --git a/src/qemu/qemu_domain.c
> b/src/qemu/qemu_domain.c
> >     >         index b8aec2d..df06c13 100644
> >     >         --- a/src/qemu/qemu_domain.c
> >     >         +++ b/src/qemu/qemu_domain.c
> >     >         @@ -827,6 +827,12 @@
> >     >         qemuDomainDeviceDefPostParse(virDomainDeviceDefPtr dev,
> >     >              if (dev->type == VIR_DOMAIN_DEVICE_DISK) {
> >     >                  virDomainDiskDefPtr disk = dev->data.disk;
> >     >
> >     >         +        if ((def->os.arch == VIR_ARCH_PPC64) &&
> >     >         +            def->os.machine && STREQ(def->os.machine,
> "pseries") &&
> >     >         +            (disk->bus == VIR_DOMAIN_DISK_BUS_IDE)) {
> >     >         +            disk->bus = VIR_DOMAIN_DISK_BUS_SCSI;
> >     >         +        }
> >     >         +
> >     >                  /* both of these require data from the driver
> config */
> >     >                  if (driver && (cfg =
> virQEMUDriverGetConfig(driver))) {
> >     >                      /* assign default storage format and driver
> >     according to
> >     >         config */
> >     >         @@ -868,6 +874,11 @@
> >     >         qemuDomainDeviceDefPostParse(virDomainDeviceDefPtr dev,
> >     >                  (def->os.arch == VIR_ARCH_S390 || def->os.arch ==
> >     >         VIR_ARCH_S390X))
> >     >                  dev->data.chr->targetType =
> >     >         VIR_DOMAIN_CHR_CONSOLE_TARGET_TYPE_VIRTIO;
> >     >
> >     >         +    if (dev->type == VIR_DOMAIN_DEVICE_CONTROLLER &&
> >     >         +        dev->data.controller->type ==
> >     VIR_DOMAIN_CONTROLLER_TYPE_IDE &&
> >     >         +        def->os.machine && STREQ(def->os.machine,
> "pseries"))
> >     >         +        dev->data.controller->type =
> >     VIR_DOMAIN_CONTROLLER_TYPE_SCSI;
> >     >         +
> >     >              /* set the default USB model to none for s390 unless
> an address
> >     >         is found */
> >     >              if (dev->type == VIR_DOMAIN_DEVICE_CONTROLLER &&
> >     >                  dev->data.controller->type ==
> >     VIR_DOMAIN_CONTROLLER_TYPE_USB &&
> >     >
> >     >         --
> >     >         libvir-list mailing list
> >     >         libvir-list at redhat.com <mailto:libvir-list at redhat.com>
> >     <mailto:libvir-list at redhat.com <mailto:libvir-list at redhat.com>>
> >     >         https://www.redhat.com/mailman/listinfo/libvir-list
> >     >
> >     >
> >     >
> >
> >
>
>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://listman.redhat.com/archives/libvir-list/attachments/20131115/37dcc610/attachment-0001.htm>


More information about the libvir-list mailing list