qemu-devel
[Top][All Lists]
Advanced

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

[Qemu-devel] [RFC PATCH 1/1] s390x: deprecate s390-squash-mcss machine p


From: Halil Pasic
Subject: [Qemu-devel] [RFC PATCH 1/1] s390x: deprecate s390-squash-mcss machine prop
Date: Wed, 22 Nov 2017 15:18:32 +0100

With the cssids unrestricted (commit <COMMIT HERE> "s390x/css: unrestrict
cssids") the s390-squash-mcss machine property should not be used.
Actually libvirt never supported this, so the expectation is that
removing it should be pretty painless.  But let's play nice and deprecate
it first.

Signed-off-by: Halil Pasic <address@hidden>
---

I'm not sure about the warnig I generate if 's390-squash-mcss'
is set to 'on':
* There is prior art where we don't warn_report but info_report
(commit 83926ad527) 
* Warning iff specified on the command line regardless of value
would probably be cleaner. Yet I'm not sure where would I need
to hook in to do that.

I would like to reference a commit for "s390x/css: unrestrict cssids"
which is currently in RFC status on the list.
---
 hw/s390x/s390-virtio-ccw.c | 5 ++++-
 qemu-doc.texi              | 6 ++++++
 qemu-options.hx            | 6 +++++-
 3 files changed, 15 insertions(+), 2 deletions(-)

diff --git a/hw/s390x/s390-virtio-ccw.c b/hw/s390x/s390-virtio-ccw.c
index 6a57f94197..c71e1d7e55 100644
--- a/hw/s390x/s390-virtio-ccw.c
+++ b/hw/s390x/s390-virtio-ccw.c
@@ -554,6 +554,9 @@ static inline void machine_set_squash_mcss(Object *obj, 
bool value,
     S390CcwMachineState *ms = S390_CCW_MACHINE(obj);
 
     ms->s390_squash_mcss = value;
+    if (ms->s390_squash_mcss) {
+        warn_report("the machine property 's390-squash-mcss' is deprecated");
+    }
 }
 
 static inline void s390_machine_initfn(Object *obj)
@@ -583,7 +586,7 @@ static inline void s390_machine_initfn(Object *obj)
     object_property_add_bool(obj, "s390-squash-mcss",
                              machine_get_squash_mcss,
                              machine_set_squash_mcss, NULL);
-    object_property_set_description(obj, "s390-squash-mcss",
+    object_property_set_description(obj, "s390-squash-mcss", "(deprecated) "
             "enable/disable squashing subchannels into the default css",
             NULL);
     object_property_set_bool(obj, false, "s390-squash-mcss", NULL);
diff --git a/qemu-doc.texi b/qemu-doc.texi
index d383ac44d4..90aa92d8b9 100644
--- a/qemu-doc.texi
+++ b/qemu-doc.texi
@@ -2500,6 +2500,12 @@ enabled via the ``-machine usb=on'' argument.
 
 The ``-nodefconfig`` argument is a synonym for ``-no-user-config``.
 
address@hidden -machine virtio-ccw,s390-squash-mcss=on|off (since 2.12.0)
+
+Since version 2.12.0 the cssid can be chosen freely. Instead of squashing
+mcss for guest that don't support multiple channel subsystems we recommend
+putting all devices into the default channel subsystem (that is 0xfe).
+
 @section qemu-img command line arguments
 
 @subsection convert -s (since 2.0.0)
diff --git a/qemu-options.hx b/qemu-options.hx
index 3728e9b4dd..53b13ec203 100644
--- a/qemu-options.hx
+++ b/qemu-options.hx
@@ -43,7 +43,7 @@ DEF("machine", HAS_ARG, QEMU_OPTION_machine, \
     "                suppress-vmdesc=on|off disables self-describing migration 
(default=off)\n"
     "                nvdimm=on|off controls NVDIMM support (default=off)\n"
     "                enforce-config-section=on|off enforce configuration 
section migration (default=off)\n"
-    "                s390-squash-mcss=on|off controls support for squashing 
into default css (default=off)\n",
+    "                s390-squash-mcss=on|off (deprecated) controls support for 
squashing into default css (default=off)\n",
     QEMU_ARCH_ALL)
 STEXI
 @item -machine address@hidden,address@hidden,...]]
@@ -98,6 +98,10 @@ Enables or disables NVDIMM support. The default is off.
 @item s390-squash-mcss=on|off
 Enables or disables squashing subchannels into the default css.
 The default is off.
+NOTE: This property is deprecated and may be removed in future releases.
+Since version 2.12.0 the cssid can be chosen freely. Instead of squashing
+mcss for guest that don't support multiple channel subsystems we recommend
+putting all devices into the default channel subsystem (that is 0xfe).
 @item enforce-config-section=on|off
 If @option{enforce-config-section} is set to @var{on}, force migration
 code to send configuration section even if the machine-type sets the
-- 
2.13.5




reply via email to

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