[PATCH] s390x/cpu_model: disallow unpack for --only-migratable

Christian Borntraeger posted 1 patch 4 years, 9 months ago
Test checkpatch passed
Patches applied successfully (tree, apply log)
git fetch https://github.com/patchew-project/qemu tags/patchew/20210125125312.138491-1-borntraeger@de.ibm.com
Maintainers: Cornelia Huck <cohuck@redhat.com>, Halil Pasic <pasic@linux.ibm.com>, David Hildenbrand <david@redhat.com>, Thomas Huth <thuth@redhat.com>, Richard Henderson <richard.henderson@linaro.org>, Christian Borntraeger <borntraeger@de.ibm.com>
There is a newer version of this series
target/s390x/cpu_models.c | 6 ++++++
1 file changed, 6 insertions(+)
[PATCH] s390x/cpu_model: disallow unpack for --only-migratable
Posted by Christian Borntraeger 4 years, 9 months ago
secure execution (aka protected virtualization) guests cannot be
migrated at the moment. Disallow the unpack facility if the user
specifies --only-migratable.

Signed-off-by: Christian Borntraeger <borntraeger@de.ibm.com>
---
 target/s390x/cpu_models.c | 6 ++++++
 1 file changed, 6 insertions(+)

diff --git a/target/s390x/cpu_models.c b/target/s390x/cpu_models.c
index 35179f9dc7ba..0fa082ae2546 100644
--- a/target/s390x/cpu_models.c
+++ b/target/s390x/cpu_models.c
@@ -26,6 +26,7 @@
 #include "qapi/qmp/qdict.h"
 #ifndef CONFIG_USER_ONLY
 #include "sysemu/arch_init.h"
+#include "sysemu/sysemu.h"
 #include "hw/pci/pci.h"
 #endif
 #include "qapi/qapi-commands-machine-target.h"
@@ -878,6 +879,11 @@ static void check_compatibility(const S390CPUModel *max_model,
         return;
     }
 
+    if (only_migratable && test_bit(S390_FEAT_UNPACK, model->features)) {
+        error_setg(errp, "The unpack facility is not compatible with "
+                   "the --only-migratable option");
+    }
+
     /* detect the missing features to properly report them */
     bitmap_andnot(missing, model->features, max_model->features, S390_FEAT_MAX);
     if (bitmap_empty(missing, S390_FEAT_MAX)) {
-- 
2.28.0


Re: [PATCH] s390x/cpu_model: disallow unpack for --only-migratable
Posted by David Hildenbrand 4 years, 9 months ago
On 25.01.21 13:53, Christian Borntraeger wrote:
> secure execution (aka protected virtualization) guests cannot be
> migrated at the moment. Disallow the unpack facility if the user
> specifies --only-migratable.
> 
> Signed-off-by: Christian Borntraeger <borntraeger@de.ibm.com>
> ---
>  target/s390x/cpu_models.c | 6 ++++++
>  1 file changed, 6 insertions(+)
> 
> diff --git a/target/s390x/cpu_models.c b/target/s390x/cpu_models.c
> index 35179f9dc7ba..0fa082ae2546 100644
> --- a/target/s390x/cpu_models.c
> +++ b/target/s390x/cpu_models.c
> @@ -26,6 +26,7 @@
>  #include "qapi/qmp/qdict.h"
>  #ifndef CONFIG_USER_ONLY
>  #include "sysemu/arch_init.h"
> +#include "sysemu/sysemu.h"
>  #include "hw/pci/pci.h"
>  #endif
>  #include "qapi/qapi-commands-machine-target.h"
> @@ -878,6 +879,11 @@ static void check_compatibility(const S390CPUModel *max_model,
>          return;
>      }
>  
> +    if (only_migratable && test_bit(S390_FEAT_UNPACK, model->features)) {
> +        error_setg(errp, "The unpack facility is not compatible with "
> +                   "the --only-migratable option");

return; ?


This implies that a VM with "-cpu host" might not start anymore, right?


-- 
Thanks,

David / dhildenb


Re: [PATCH] s390x/cpu_model: disallow unpack for --only-migratable
Posted by Christian Borntraeger 4 years, 9 months ago

On 25.01.21 13:57, David Hildenbrand wrote:
> On 25.01.21 13:53, Christian Borntraeger wrote:
>> secure execution (aka protected virtualization) guests cannot be
>> migrated at the moment. Disallow the unpack facility if the user
>> specifies --only-migratable.
>>
>> Signed-off-by: Christian Borntraeger <borntraeger@de.ibm.com>
>> ---
>>  target/s390x/cpu_models.c | 6 ++++++
>>  1 file changed, 6 insertions(+)
>>
>> diff --git a/target/s390x/cpu_models.c b/target/s390x/cpu_models.c
>> index 35179f9dc7ba..0fa082ae2546 100644
>> --- a/target/s390x/cpu_models.c
>> +++ b/target/s390x/cpu_models.c
>> @@ -26,6 +26,7 @@
>>  #include "qapi/qmp/qdict.h"
>>  #ifndef CONFIG_USER_ONLY
>>  #include "sysemu/arch_init.h"
>> +#include "sysemu/sysemu.h"
>>  #include "hw/pci/pci.h"
>>  #endif
>>  #include "qapi/qapi-commands-machine-target.h"
>> @@ -878,6 +879,11 @@ static void check_compatibility(const S390CPUModel *max_model,
>>          return;
>>      }
>>  
>> +    if (only_migratable && test_bit(S390_FEAT_UNPACK, model->features)) {
>> +        error_setg(errp, "The unpack facility is not compatible with "
>> +                   "the --only-migratable option");
> 
> return; ?

of course.

> 
> 
> This implies that a VM with "-cpu host" might not start anymore, right?

Only if --only-migratable is set.

Re: [PATCH] s390x/cpu_model: disallow unpack for --only-migratable
Posted by David Hildenbrand 4 years, 9 months ago
On 25.01.21 13:59, Christian Borntraeger wrote:
> 
> 
> On 25.01.21 13:57, David Hildenbrand wrote:
>> On 25.01.21 13:53, Christian Borntraeger wrote:
>>> secure execution (aka protected virtualization) guests cannot be
>>> migrated at the moment. Disallow the unpack facility if the user
>>> specifies --only-migratable.
>>>
>>> Signed-off-by: Christian Borntraeger <borntraeger@de.ibm.com>
>>> ---
>>>  target/s390x/cpu_models.c | 6 ++++++
>>>  1 file changed, 6 insertions(+)
>>>
>>> diff --git a/target/s390x/cpu_models.c b/target/s390x/cpu_models.c
>>> index 35179f9dc7ba..0fa082ae2546 100644
>>> --- a/target/s390x/cpu_models.c
>>> +++ b/target/s390x/cpu_models.c
>>> @@ -26,6 +26,7 @@
>>>  #include "qapi/qmp/qdict.h"
>>>  #ifndef CONFIG_USER_ONLY
>>>  #include "sysemu/arch_init.h"
>>> +#include "sysemu/sysemu.h"
>>>  #include "hw/pci/pci.h"
>>>  #endif
>>>  #include "qapi/qapi-commands-machine-target.h"
>>> @@ -878,6 +879,11 @@ static void check_compatibility(const S390CPUModel *max_model,
>>>          return;
>>>      }
>>>  
>>> +    if (only_migratable && test_bit(S390_FEAT_UNPACK, model->features)) {
>>> +        error_setg(errp, "The unpack facility is not compatible with "
>>> +                   "the --only-migratable option");
>>
>> return; ?
> 
> of course.
> 
>>
>>
>> This implies that a VM with "-cpu host" might not start anymore, right?
> 
> Only if --only-migratable is set.
> 

Right, that's what I meant

Reviewed-by: David Hildenbrand <david@redhat.com>

-- 
Thanks,

David / dhildenb