linux-s390.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
* [GIT PULL 0/1] KVM: s390: Fix for master (4.12)
@ 2017-06-08 13:57 Christian Borntraeger
  2017-06-08 13:57 ` [GIT PULL 1/1] KVM: s390: fix ais handling vs cpu model Christian Borntraeger
  2017-06-08 14:36 ` [GIT PULL 0/1] KVM: s390: Fix for master (4.12) Paolo Bonzini
  0 siblings, 2 replies; 4+ messages in thread
From: Christian Borntraeger @ 2017-06-08 13:57 UTC (permalink / raw)
  To: Paolo Bonzini, Radim Krčmář
  Cc: KVM, Christian Borntraeger, Cornelia Huck, linux-s390

Paolo, Radim,

The following changes since commit 55c315ee09d3bd37f9d71e85e54d6ebe675b6462:

  Merge tag 'kvm-arm-for-v4.12-rc2' of git://git.kernel.org/pub/scm/linux/kernel/git/kvmarm/kvmarm (2017-05-18 14:40:32 +0200)

are available in the git repository at:

  ssh://git@gitolite.kernel.org/pub/scm/linux/kernel/git/kvms390/linux.git tags/kvm-s390-master-4.12-1

for you to fetch changes up to 1ba15b24f07c44f68067959522639226c963e212:

  KVM: s390: fix ais handling vs cpu model (2017-05-31 19:54:49 +0200)

----------------------------------------------------------------
KVM: s390: Fix for master (4.12)

- The newly created AIS capability enables the feature unconditionally
  and ignores the cpu model

----------------------------------------------------------------
Christian Borntraeger (1):
      KVM: s390: fix ais handling vs cpu model

 arch/s390/include/asm/kvm_host.h | 1 -
 arch/s390/kvm/interrupt.c        | 4 ++--
 arch/s390/kvm/kvm-s390.c         | 2 --
 3 files changed, 2 insertions(+), 5 deletions(-)

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

* [GIT PULL 1/1] KVM: s390: fix ais handling vs cpu model
  2017-06-08 13:57 [GIT PULL 0/1] KVM: s390: Fix for master (4.12) Christian Borntraeger
@ 2017-06-08 13:57 ` Christian Borntraeger
  2017-06-08 14:36 ` [GIT PULL 0/1] KVM: s390: Fix for master (4.12) Paolo Bonzini
  1 sibling, 0 replies; 4+ messages in thread
From: Christian Borntraeger @ 2017-06-08 13:57 UTC (permalink / raw)
  To: Paolo Bonzini, Radim Krčmář
  Cc: KVM, Christian Borntraeger, Cornelia Huck, linux-s390

If ais is disabled via cpumodel, we must act accordingly, even if
KVM_CAP_S390_AIS was enabled.

Signed-off-by: Christian Borntraeger <borntraeger@de.ibm.com>
Reviewed-by: Pierre Morel <pmorel@linux.vnet.ibm.com>
Reviewed-by: Yi Min Zhao <zyimin@linux.vnet.ibm.com>
Reviewed-by: Halil Pasic <pasic@linux.vnet.ibm.com>
Reviewed-by: Eric Farman <farman@linux.vnet.ibm.com>
---
 arch/s390/include/asm/kvm_host.h | 1 -
 arch/s390/kvm/interrupt.c        | 4 ++--
 arch/s390/kvm/kvm-s390.c         | 2 --
 3 files changed, 2 insertions(+), 5 deletions(-)

diff --git a/arch/s390/include/asm/kvm_host.h b/arch/s390/include/asm/kvm_host.h
index 426614a..65d07ac 100644
--- a/arch/s390/include/asm/kvm_host.h
+++ b/arch/s390/include/asm/kvm_host.h
@@ -541,7 +541,6 @@ struct kvm_s390_float_interrupt {
 	struct mutex ais_lock;
 	u8 simm;
 	u8 nimm;
-	int ais_enabled;
 };
 
 struct kvm_hw_wp_info_arch {
diff --git a/arch/s390/kvm/interrupt.c b/arch/s390/kvm/interrupt.c
index caf15c8a..2d120fe 100644
--- a/arch/s390/kvm/interrupt.c
+++ b/arch/s390/kvm/interrupt.c
@@ -2160,7 +2160,7 @@ static int modify_ais_mode(struct kvm *kvm, struct kvm_device_attr *attr)
 	struct kvm_s390_ais_req req;
 	int ret = 0;
 
-	if (!fi->ais_enabled)
+	if (!test_kvm_facility(kvm, 72))
 		return -ENOTSUPP;
 
 	if (copy_from_user(&req, (void __user *)attr->addr, sizeof(req)))
@@ -2204,7 +2204,7 @@ static int kvm_s390_inject_airq(struct kvm *kvm,
 	};
 	int ret = 0;
 
-	if (!fi->ais_enabled || !adapter->suppressible)
+	if (!test_kvm_facility(kvm, 72) || !adapter->suppressible)
 		return kvm_s390_inject_vm(kvm, &s390int);
 
 	mutex_lock(&fi->ais_lock);
diff --git a/arch/s390/kvm/kvm-s390.c b/arch/s390/kvm/kvm-s390.c
index 689ac48..f28e2e7 100644
--- a/arch/s390/kvm/kvm-s390.c
+++ b/arch/s390/kvm/kvm-s390.c
@@ -558,7 +558,6 @@ static int kvm_vm_ioctl_enable_cap(struct kvm *kvm, struct kvm_enable_cap *cap)
 		} else {
 			set_kvm_facility(kvm->arch.model.fac_mask, 72);
 			set_kvm_facility(kvm->arch.model.fac_list, 72);
-			kvm->arch.float_int.ais_enabled = 1;
 			r = 0;
 		}
 		mutex_unlock(&kvm->lock);
@@ -1533,7 +1532,6 @@ int kvm_arch_init_vm(struct kvm *kvm, unsigned long type)
 	mutex_init(&kvm->arch.float_int.ais_lock);
 	kvm->arch.float_int.simm = 0;
 	kvm->arch.float_int.nimm = 0;
-	kvm->arch.float_int.ais_enabled = 0;
 	spin_lock_init(&kvm->arch.float_int.lock);
 	for (i = 0; i < FIRQ_LIST_COUNT; i++)
 		INIT_LIST_HEAD(&kvm->arch.float_int.lists[i]);
-- 
2.7.4

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

* Re: [GIT PULL 0/1] KVM: s390: Fix for master (4.12)
  2017-06-08 13:57 [GIT PULL 0/1] KVM: s390: Fix for master (4.12) Christian Borntraeger
  2017-06-08 13:57 ` [GIT PULL 1/1] KVM: s390: fix ais handling vs cpu model Christian Borntraeger
@ 2017-06-08 14:36 ` Paolo Bonzini
  2017-06-08 14:40   ` Christian Borntraeger
  1 sibling, 1 reply; 4+ messages in thread
From: Paolo Bonzini @ 2017-06-08 14:36 UTC (permalink / raw)
  To: Christian Borntraeger, Radim Krčmář
  Cc: KVM, Cornelia Huck, linux-s390



On 08/06/2017 15:57, Christian Borntraeger wrote:
> Paolo, Radim,
> 
> The following changes since commit 55c315ee09d3bd37f9d71e85e54d6ebe675b6462:
> 
>   Merge tag 'kvm-arm-for-v4.12-rc2' of git://git.kernel.org/pub/scm/linux/kernel/git/kvmarm/kvmarm (2017-05-18 14:40:32 +0200)
> 
> are available in the git repository at:
> 
>   ssh://git@gitolite.kernel.org/pub/scm/linux/kernel/git/kvms390/linux.git tags/kvm-s390-master-4.12-1

You have a script to fix. :)  Pulled anyway, thanks.

Paolo

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

* Re: [GIT PULL 0/1] KVM: s390: Fix for master (4.12)
  2017-06-08 14:36 ` [GIT PULL 0/1] KVM: s390: Fix for master (4.12) Paolo Bonzini
@ 2017-06-08 14:40   ` Christian Borntraeger
  0 siblings, 0 replies; 4+ messages in thread
From: Christian Borntraeger @ 2017-06-08 14:40 UTC (permalink / raw)
  To: Paolo Bonzini, Radim Krčmář; +Cc: KVM, Cornelia Huck, linux-s390

On 06/08/2017 04:36 PM, Paolo Bonzini wrote:
> 
> 
> On 08/06/2017 15:57, Christian Borntraeger wrote:
>> Paolo, Radim,
>>
>> The following changes since commit 55c315ee09d3bd37f9d71e85e54d6ebe675b6462:
>>
>>   Merge tag 'kvm-arm-for-v4.12-rc2' of git://git.kernel.org/pub/scm/linux/kernel/git/kvmarm/kvmarm (2017-05-18 14:40:32 +0200)
>>
>> are available in the git repository at:
>>
>>   ssh://git@gitolite.kernel.org/pub/scm/linux/kernel/git/kvms390/linux.git tags/kvm-s390-master-4.12-1
> 
> You have a script to fix. :)  Pulled anyway, thanks.

Indeed. Fixed now :-)

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

end of thread, other threads:[~2017-06-08 14:40 UTC | newest]

Thread overview: 4+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2017-06-08 13:57 [GIT PULL 0/1] KVM: s390: Fix for master (4.12) Christian Borntraeger
2017-06-08 13:57 ` [GIT PULL 1/1] KVM: s390: fix ais handling vs cpu model Christian Borntraeger
2017-06-08 14:36 ` [GIT PULL 0/1] KVM: s390: Fix for master (4.12) Paolo Bonzini
2017-06-08 14:40   ` Christian Borntraeger

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).