qemu-devel.nongnu.org archive mirror
 help / color / mirror / Atom feed
* [Qemu-devel] [PATCH] s390x: Switch to s390-ccw machine as default
@ 2015-06-16 21:08 Alexander Graf
  2015-06-16 21:23 ` Aurelien Jarno
                   ` (2 more replies)
  0 siblings, 3 replies; 7+ messages in thread
From: Alexander Graf @ 2015-06-16 21:08 UTC (permalink / raw)
  To: qemu-devel; +Cc: Cornelia Huck, Christian Borntraeger

We now finally have TCG support for the basic set of instructions necessary
to run the s390-ccw machine. That means in any aspect possible that machine
type is now superior to the legacy s390-virtio machine.

Switch over to the ccw machine as default. That way people don't get a halfway
broken machine with the s390x target.

Signed-off-by: Alexander Graf <agraf@suse.de>
---
 blockdev.c                 | 2 +-
 hw/s390x/s390-virtio-ccw.c | 1 +
 hw/s390x/s390-virtio.c     | 1 -
 qdev-monitor.c             | 6 +++---
 4 files changed, 5 insertions(+), 5 deletions(-)

diff --git a/blockdev.c b/blockdev.c
index 3aa1ae6..41d7e0f 100644
--- a/blockdev.c
+++ b/blockdev.c
@@ -942,7 +942,7 @@ DriveInfo *drive_new(QemuOpts *all_opts, BlockInterfaceType block_default_type)
         devopts = qemu_opts_create(qemu_find_opts("device"), NULL, 0,
                                    &error_abort);
         if (arch_type == QEMU_ARCH_S390X) {
-            qemu_opt_set(devopts, "driver", "virtio-blk-s390", &error_abort);
+            qemu_opt_set(devopts, "driver", "virtio-blk-ccw", &error_abort);
         } else {
             qemu_opt_set(devopts, "driver", "virtio-blk-pci", &error_abort);
         }
diff --git a/hw/s390x/s390-virtio-ccw.c b/hw/s390x/s390-virtio-ccw.c
index 8a565f6..c574988 100644
--- a/hw/s390x/s390-virtio-ccw.c
+++ b/hw/s390x/s390-virtio-ccw.c
@@ -216,6 +216,7 @@ static void ccw_machine_class_init(ObjectClass *oc, void *data)
     mc->no_sdcard = 1;
     mc->use_sclp = 1;
     mc->max_cpus = 255;
+    mc->is_default = 1;
     nc->nmi_monitor_handler = s390_nmi;
 }
 
diff --git a/hw/s390x/s390-virtio.c b/hw/s390x/s390-virtio.c
index 59750db..00ea793 100644
--- a/hw/s390x/s390-virtio.c
+++ b/hw/s390x/s390-virtio.c
@@ -345,7 +345,6 @@ static void s390_machine_class_init(ObjectClass *oc, void *data)
     mc->no_floppy = 1;
     mc->no_cdrom = 1;
     mc->no_sdcard = 1;
-    mc->is_default = 1;
     nc->nmi_monitor_handler = s390_nmi;
 }
 
diff --git a/qdev-monitor.c b/qdev-monitor.c
index 7dd62dd..d71d1ee 100644
--- a/qdev-monitor.c
+++ b/qdev-monitor.c
@@ -42,9 +42,9 @@ static const QDevAlias qdev_alias_table[] = {
     { "virtio-serial-pci", "virtio-serial", QEMU_ARCH_ALL & ~QEMU_ARCH_S390X },
     { "virtio-balloon-pci", "virtio-balloon",
             QEMU_ARCH_ALL & ~QEMU_ARCH_S390X },
-    { "virtio-blk-s390", "virtio-blk", QEMU_ARCH_S390X },
-    { "virtio-net-s390", "virtio-net", QEMU_ARCH_S390X },
-    { "virtio-serial-s390", "virtio-serial", QEMU_ARCH_S390X },
+    { "virtio-blk-ccw", "virtio-blk", QEMU_ARCH_S390X },
+    { "virtio-net-ccw", "virtio-net", QEMU_ARCH_S390X },
+    { "virtio-serial-ccw", "virtio-serial", QEMU_ARCH_S390X },
     { "lsi53c895a", "lsi" },
     { "ich9-ahci", "ahci" },
     { "kvm-pci-assign", "pci-assign" },
-- 
1.7.12.4

^ permalink raw reply related	[flat|nested] 7+ messages in thread

* Re: [Qemu-devel] [PATCH] s390x: Switch to s390-ccw machine as default
  2015-06-16 21:08 [Qemu-devel] [PATCH] s390x: Switch to s390-ccw machine as default Alexander Graf
@ 2015-06-16 21:23 ` Aurelien Jarno
  2015-06-18 14:57   ` Christian Borntraeger
  2015-06-16 21:27 ` Christian Borntraeger
  2015-06-17 13:46 ` Aurelien Jarno
  2 siblings, 1 reply; 7+ messages in thread
From: Aurelien Jarno @ 2015-06-16 21:23 UTC (permalink / raw)
  To: Alexander Graf; +Cc: Cornelia Huck, Christian Borntraeger, qemu-devel

On 2015-06-16 23:08, Alexander Graf wrote:
> We now finally have TCG support for the basic set of instructions necessary
> to run the s390-ccw machine. That means in any aspect possible that machine
> type is now superior to the legacy s390-virtio machine.
> 
> Switch over to the ccw machine as default. That way people don't get a halfway
> broken machine with the s390x target.
> 
> Signed-off-by: Alexander Graf <agraf@suse.de>

\o/ Very good idea!

Reviewed-by: Aurelien Jarno <aurelien@aurel32.net>

That said in the future it would be even better if we can automagically
pass bootindex=1 to the first created drive when not declaring the
device and the drive separately. That would allow to run an image with
just:

  qemu-system-s390x -nographic -drive file=image.qcow2

Aurelien

-- 
Aurelien Jarno                          GPG: 4096R/1DDD8C9B
aurelien@aurel32.net                 http://www.aurel32.net

^ permalink raw reply	[flat|nested] 7+ messages in thread

* Re: [Qemu-devel] [PATCH] s390x: Switch to s390-ccw machine as default
  2015-06-16 21:08 [Qemu-devel] [PATCH] s390x: Switch to s390-ccw machine as default Alexander Graf
  2015-06-16 21:23 ` Aurelien Jarno
@ 2015-06-16 21:27 ` Christian Borntraeger
  2015-06-17 13:46 ` Aurelien Jarno
  2 siblings, 0 replies; 7+ messages in thread
From: Christian Borntraeger @ 2015-06-16 21:27 UTC (permalink / raw)
  To: Alexander Graf, qemu-devel; +Cc: Cornelia Huck

Am 16.06.2015 um 23:08 schrieb Alexander Graf:
> We now finally have TCG support for the basic set of instructions necessary
> to run the s390-ccw machine. That means in any aspect possible that machine
> type is now superior to the legacy s390-virtio machine.
> 
> Switch over to the ccw machine as default. That way people don't get a halfway
> broken machine with the s390x target.
> 
> Signed-off-by: Alexander Graf <agraf@suse.de>

It will certainly make life easier for kvm on s390.

Acked-by: Christian Borntraeger <borntraeger@de.ibm.com>

> ---
>  blockdev.c                 | 2 +-
>  hw/s390x/s390-virtio-ccw.c | 1 +
>  hw/s390x/s390-virtio.c     | 1 -
>  qdev-monitor.c             | 6 +++---
>  4 files changed, 5 insertions(+), 5 deletions(-)
> 
> diff --git a/blockdev.c b/blockdev.c
> index 3aa1ae6..41d7e0f 100644
> --- a/blockdev.c
> +++ b/blockdev.c
> @@ -942,7 +942,7 @@ DriveInfo *drive_new(QemuOpts *all_opts, BlockInterfaceType block_default_type)
>          devopts = qemu_opts_create(qemu_find_opts("device"), NULL, 0,
>                                     &error_abort);
>          if (arch_type == QEMU_ARCH_S390X) {
> -            qemu_opt_set(devopts, "driver", "virtio-blk-s390", &error_abort);
> +            qemu_opt_set(devopts, "driver", "virtio-blk-ccw", &error_abort);
>          } else {
>              qemu_opt_set(devopts, "driver", "virtio-blk-pci", &error_abort);
>          }
> diff --git a/hw/s390x/s390-virtio-ccw.c b/hw/s390x/s390-virtio-ccw.c
> index 8a565f6..c574988 100644
> --- a/hw/s390x/s390-virtio-ccw.c
> +++ b/hw/s390x/s390-virtio-ccw.c
> @@ -216,6 +216,7 @@ static void ccw_machine_class_init(ObjectClass *oc, void *data)
>      mc->no_sdcard = 1;
>      mc->use_sclp = 1;
>      mc->max_cpus = 255;
> +    mc->is_default = 1;
>      nc->nmi_monitor_handler = s390_nmi;
>  }
> 
> diff --git a/hw/s390x/s390-virtio.c b/hw/s390x/s390-virtio.c
> index 59750db..00ea793 100644
> --- a/hw/s390x/s390-virtio.c
> +++ b/hw/s390x/s390-virtio.c
> @@ -345,7 +345,6 @@ static void s390_machine_class_init(ObjectClass *oc, void *data)
>      mc->no_floppy = 1;
>      mc->no_cdrom = 1;
>      mc->no_sdcard = 1;
> -    mc->is_default = 1;
>      nc->nmi_monitor_handler = s390_nmi;
>  }
> 
> diff --git a/qdev-monitor.c b/qdev-monitor.c
> index 7dd62dd..d71d1ee 100644
> --- a/qdev-monitor.c
> +++ b/qdev-monitor.c
> @@ -42,9 +42,9 @@ static const QDevAlias qdev_alias_table[] = {
>      { "virtio-serial-pci", "virtio-serial", QEMU_ARCH_ALL & ~QEMU_ARCH_S390X },
>      { "virtio-balloon-pci", "virtio-balloon",
>              QEMU_ARCH_ALL & ~QEMU_ARCH_S390X },
> -    { "virtio-blk-s390", "virtio-blk", QEMU_ARCH_S390X },
> -    { "virtio-net-s390", "virtio-net", QEMU_ARCH_S390X },
> -    { "virtio-serial-s390", "virtio-serial", QEMU_ARCH_S390X },
> +    { "virtio-blk-ccw", "virtio-blk", QEMU_ARCH_S390X },
> +    { "virtio-net-ccw", "virtio-net", QEMU_ARCH_S390X },
> +    { "virtio-serial-ccw", "virtio-serial", QEMU_ARCH_S390X },
>      { "lsi53c895a", "lsi" },
>      { "ich9-ahci", "ahci" },
>      { "kvm-pci-assign", "pci-assign" },
> 

^ permalink raw reply	[flat|nested] 7+ messages in thread

* Re: [Qemu-devel] [PATCH] s390x: Switch to s390-ccw machine as default
  2015-06-16 21:08 [Qemu-devel] [PATCH] s390x: Switch to s390-ccw machine as default Alexander Graf
  2015-06-16 21:23 ` Aurelien Jarno
  2015-06-16 21:27 ` Christian Borntraeger
@ 2015-06-17 13:46 ` Aurelien Jarno
  2015-06-17 14:00   ` Christian Borntraeger
  2 siblings, 1 reply; 7+ messages in thread
From: Aurelien Jarno @ 2015-06-17 13:46 UTC (permalink / raw)
  To: Alexander Graf; +Cc: Cornelia Huck, Christian Borntraeger, qemu-devel

On 2015-06-16 23:08, Alexander Graf wrote:
> We now finally have TCG support for the basic set of instructions necessary
> to run the s390-ccw machine. That means in any aspect possible that machine
> type is now superior to the legacy s390-virtio machine.
> 
> Switch over to the ccw machine as default. That way people don't get a halfway
> broken machine with the s390x target.

It seems the current s390x-ccw firmware doesn't allow to boot on a
virtio-scsi-ccw disk (but this is not a regression compared to the
s390-virtio machine). virtio-scsi has some advantages over virtio-blk,
like the possibility to do thin-provisioning. Of course one can use a
small virtio-blk for the /boot partition, and virtio-scsi for the
remaining disks.

Do you think it would possible to add it? Given a virtio-scsi device can
provide multiple disks, how can we pass the disk to boot on to the
firmware? Currently it seems we pass the ccw device in GR7, but not more
details.

Aurelien

-- 
Aurelien Jarno                          GPG: 4096R/1DDD8C9B
aurelien@aurel32.net                 http://www.aurel32.net

^ permalink raw reply	[flat|nested] 7+ messages in thread

* Re: [Qemu-devel] [PATCH] s390x: Switch to s390-ccw machine as default
  2015-06-17 13:46 ` Aurelien Jarno
@ 2015-06-17 14:00   ` Christian Borntraeger
  2015-06-17 14:32     ` Aurelien Jarno
  0 siblings, 1 reply; 7+ messages in thread
From: Christian Borntraeger @ 2015-06-17 14:00 UTC (permalink / raw)
  To: Aurelien Jarno, Alexander Graf; +Cc: Cornelia Huck, qemu-devel

Am 17.06.2015 um 15:46 schrieb Aurelien Jarno:
> On 2015-06-16 23:08, Alexander Graf wrote:
>> We now finally have TCG support for the basic set of instructions necessary
>> to run the s390-ccw machine. That means in any aspect possible that machine
>> type is now superior to the legacy s390-virtio machine.
>>
>> Switch over to the ccw machine as default. That way people don't get a halfway
>> broken machine with the s390x target.
> 
> It seems the current s390x-ccw firmware doesn't allow to boot on a
> virtio-scsi-ccw disk (but this is not a regression compared to the
> s390-virtio machine). virtio-scsi has some advantages over virtio-blk,
> like the possibility to do thin-provisioning. Of course one can use a
> small virtio-blk for the /boot partition, and virtio-scsi for the
> remaining disks.
> 
> Do you think it would possible to add it? Given a virtio-scsi device can
> provide multiple disks, how can we pass the disk to boot on to the
> firmware? Currently it seems we pass the ccw device in GR7, but not more
> details.

Yes, we look into that, Integrating this into s390 specifics without adding
hacks that have to last forever will take most of the time. We have to 
consider aspects like loadparm, the existing interfaces for the zfcp
connectivity in the diag308 handler and so on (so that /sys/firmware/ipl/
reflects the disks) - so give us some time to do it properly to see
how this can be integrated.

Christian

^ permalink raw reply	[flat|nested] 7+ messages in thread

* Re: [Qemu-devel] [PATCH] s390x: Switch to s390-ccw machine as default
  2015-06-17 14:00   ` Christian Borntraeger
@ 2015-06-17 14:32     ` Aurelien Jarno
  0 siblings, 0 replies; 7+ messages in thread
From: Aurelien Jarno @ 2015-06-17 14:32 UTC (permalink / raw)
  To: Christian Borntraeger; +Cc: Cornelia Huck, Alexander Graf, qemu-devel

On 2015-06-17 16:00, Christian Borntraeger wrote:
> Am 17.06.2015 um 15:46 schrieb Aurelien Jarno:
> > On 2015-06-16 23:08, Alexander Graf wrote:
> >> We now finally have TCG support for the basic set of instructions necessary
> >> to run the s390-ccw machine. That means in any aspect possible that machine
> >> type is now superior to the legacy s390-virtio machine.
> >>
> >> Switch over to the ccw machine as default. That way people don't get a halfway
> >> broken machine with the s390x target.
> > 
> > It seems the current s390x-ccw firmware doesn't allow to boot on a
> > virtio-scsi-ccw disk (but this is not a regression compared to the
> > s390-virtio machine). virtio-scsi has some advantages over virtio-blk,
> > like the possibility to do thin-provisioning. Of course one can use a
> > small virtio-blk for the /boot partition, and virtio-scsi for the
> > remaining disks.
> > 
> > Do you think it would possible to add it? Given a virtio-scsi device can
> > provide multiple disks, how can we pass the disk to boot on to the
> > firmware? Currently it seems we pass the ccw device in GR7, but not more
> > details.
> 
> Yes, we look into that, Integrating this into s390 specifics without adding
> hacks that have to last forever will take most of the time. We have to 
> consider aspects like loadparm, the existing interfaces for the zfcp
> connectivity in the diag308 handler and so on (so that /sys/firmware/ipl/
> reflects the disks) - so give us some time to do it properly to see
> how this can be integrated.

Great, thanks for working on that.

-- 
Aurelien Jarno                          GPG: 4096R/1DDD8C9B
aurelien@aurel32.net                 http://www.aurel32.net

^ permalink raw reply	[flat|nested] 7+ messages in thread

* Re: [Qemu-devel] [PATCH] s390x: Switch to s390-ccw machine as default
  2015-06-16 21:23 ` Aurelien Jarno
@ 2015-06-18 14:57   ` Christian Borntraeger
  0 siblings, 0 replies; 7+ messages in thread
From: Christian Borntraeger @ 2015-06-18 14:57 UTC (permalink / raw)
  To: Aurelien Jarno, Alexander Graf; +Cc: Cornelia Huck, qemu-devel

Am 16.06.2015 um 23:23 schrieb Aurelien Jarno:
> On 2015-06-16 23:08, Alexander Graf wrote:
>> We now finally have TCG support for the basic set of instructions necessary
>> to run the s390-ccw machine. That means in any aspect possible that machine
>> type is now superior to the legacy s390-virtio machine.
>>
>> Switch over to the ccw machine as default. That way people don't get a halfway
>> broken machine with the s390x target.
>>
>> Signed-off-by: Alexander Graf <agraf@suse.de>
> 
> \o/ Very good idea!
> 
> Reviewed-by: Aurelien Jarno <aurelien@aurel32.net>
> 
> That said in the future it would be even better if we can automagically
> pass bootindex=1 to the first created drive when not declaring the
> device and the drive separately. That would allow to run an image with
> just:

This is actually a bug that was introduced with 
commit fa92e218df1d ("s390x/ipl: avoid sign extension")
Will prepare a fix.

Christian

^ permalink raw reply	[flat|nested] 7+ messages in thread

end of thread, other threads:[~2015-06-18 14:58 UTC | newest]

Thread overview: 7+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2015-06-16 21:08 [Qemu-devel] [PATCH] s390x: Switch to s390-ccw machine as default Alexander Graf
2015-06-16 21:23 ` Aurelien Jarno
2015-06-18 14:57   ` Christian Borntraeger
2015-06-16 21:27 ` Christian Borntraeger
2015-06-17 13:46 ` Aurelien Jarno
2015-06-17 14:00   ` Christian Borntraeger
2015-06-17 14:32     ` Aurelien Jarno

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).