public inbox for linux-s390@vger.kernel.org
 help / color / mirror / Atom feed
* [GIT PULL 00/10] KVM: s390: features and fixes for 4.7 part2
@ 2016-05-09  9:20 Christian Borntraeger
  0 siblings, 0 replies; 5+ messages in thread
From: Christian Borntraeger @ 2016-05-09  9:20 UTC (permalink / raw)
  To: Paolo Bonzini, Radim Krčmář
  Cc: KVM, Cornelia Huck, linux-s390, Christian Borntraeger,
	Jens Freimann, David Hildenbrand, Alexander Yarygin

Paolo, Radim,

here is the 2nd bunch of s390 patches for 4.7 (kvm/next).
I did not add the wait polling patches yet, so maybe we have a 3rd
round later this week (or we just defer it to 4.8) - depending
on some performance results.

Please pull

The following changes since commit 05b1159e641fa45e885aec8bf8e515117c8977d9:

  Merge tag 'kvms390-20160420' of git://git.kernel.org/pub/scm/linux/kernel/git/kvms390/linux into next (2016-04-20 15:28:51 +0200)

are available in the git repository at:

  git://git.kernel.org/pub/scm/linux/kernel/git/kvms390/linux.git  tags/kvm-s390-next-4.7-2

for you to fetch changes up to be7c9d7ba9e405ccdcd1892a899539ce730935b0:

  KVM: s390: Populate mask of non-hypervisor managed facility bits (2016-05-04 10:57:43 +0200)

----------------------------------------------------------------
KVM: s390: features and fixes for 4.7 part2

- Use hardware provided information about facility bits that do not
  need any hypervisor activitiy
- Add missing documentation for KVM_CAP_S390_RI
- Some updates/fixes for handling cpu models and facilities

----------------------------------------------------------------
Alexander Yarygin (3):
      KVM: s390: Enable all facility bits that are known good for passthrough
      s390/sclp: Add hmfai field
      KVM: s390: Populate mask of non-hypervisor managed facility bits

David Hildenbrand (7):
      KVM: s390: cmma: don't check entry content
      KVM: s390: support NQ only if the facility is enabled for the guest
      KVM: s390: enable PFMFI only if guest hast EDAT1
      KVM: s390: enable SRS only if enabled for the guest
      KVM: s390: cleanup cpuid handling
      KVM: s390: force ibc into valid range
      KVM: s390: document KVM_CAP_S390_RI

 Documentation/virtual/kvm/api.txt |  8 ++++++
 arch/s390/include/asm/kvm_host.h  |  6 +----
 arch/s390/include/asm/sclp.h      |  1 +
 arch/s390/include/asm/sigp.h      |  1 +
 arch/s390/kvm/kvm-s390.c          | 55 +++++++++++++++++++++++++++++----------
 arch/s390/kvm/priv.c              | 21 +++++----------
 arch/s390/kvm/sigp.c              |  6 +++++
 drivers/s390/char/sclp_early.c    |  6 ++++-
 8 files changed, 70 insertions(+), 34 deletions(-)

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

* [GIT PULL 00/10] KVM: s390: features and fixes for 4.7 part2
@ 2016-05-09 12:26 Christian Borntraeger
  2016-05-09 12:26 ` [GIT PULL 03/10] KVM: s390: enable PFMFI only if guest has EDAT1 Christian Borntraeger
                   ` (2 more replies)
  0 siblings, 3 replies; 5+ messages in thread
From: Christian Borntraeger @ 2016-05-09 12:26 UTC (permalink / raw)
  To: Paolo Bonzini, Radim Krčmář
  Cc: KVM, Cornelia Huck, linux-s390, Christian Borntraeger,
	Jens Freimann, David Hildenbrand, Alexander Yarygin

Paolo, Radim,

here is v2 of the the 2nd bunch of s390 patches for 4.7 (kvm/next).
Only the 2 changed patches are send as reply.
patch 3: fix hast->has in subject
patch 4: move define


Please pull

The following changes since commit 05b1159e641fa45e885aec8bf8e515117c8977d9:

  Merge tag 'kvms390-20160420' of git://git.kernel.org/pub/scm/linux/kernel/git/kvms390/linux into next (2016-04-20 15:28:51 +0200)

are available in the git repository at:

  git://git.kernel.org/pub/scm/linux/kernel/git/kvms390/linux.git  tags/kvm-s390-next-4.7-2

for you to fetch changes up to 60a37709ce603da62d0b60699b713558b4cfd513:

  KVM: s390: Populate mask of non-hypervisor managed facility bits (2016-05-09 13:33:59 +0200)

----------------------------------------------------------------
KVM: s390: features and fixes for 4.7 part2

- Use hardware provided information about facility bits that do not
  need any hypervisor activitiy
- Add missing documentation for KVM_CAP_S390_RI
- Some updates/fixes for handling cpu models and facilities

----------------------------------------------------------------
Alexander Yarygin (3):
      KVM: s390: Enable all facility bits that are known good for passthrough
      s390/sclp: Add hmfai field
      KVM: s390: Populate mask of non-hypervisor managed facility bits

David Hildenbrand (7):
      KVM: s390: cmma: don't check entry content
      KVM: s390: support NQ only if the facility is enabled for the guest
      KVM: s390: enable PFMFI only if guest has EDAT1
      KVM: s390: enable SRS only if enabled for the guest
      KVM: s390: cleanup cpuid handling
      KVM: s390: force ibc into valid range
      KVM: s390: document KVM_CAP_S390_RI

 Documentation/virtual/kvm/api.txt |  8 ++++++
 arch/s390/include/asm/kvm_host.h  |  6 +----
 arch/s390/include/asm/sclp.h      |  1 +
 arch/s390/include/asm/sigp.h      |  1 +
 arch/s390/kvm/kvm-s390.c          | 55 +++++++++++++++++++++++++++++----------
 arch/s390/kvm/priv.c              | 21 +++++----------
 arch/s390/kvm/sigp.c              |  6 +++++
 drivers/s390/char/sclp_early.c    |  6 ++++-
 8 files changed, 70 insertions(+), 34 deletions(-)

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

* [GIT PULL 03/10] KVM: s390: enable PFMFI only if guest has EDAT1
  2016-05-09 12:26 [GIT PULL 00/10] KVM: s390: features and fixes for 4.7 part2 Christian Borntraeger
@ 2016-05-09 12:26 ` Christian Borntraeger
  2016-05-09 12:26 ` [GIT PULL 04/10] KVM: s390: enable SRS only if enabled for the guest Christian Borntraeger
  2016-05-10 14:40 ` [GIT PULL 00/10] KVM: s390: features and fixes for 4.7 part2 Paolo Bonzini
  2 siblings, 0 replies; 5+ messages in thread
From: Christian Borntraeger @ 2016-05-09 12:26 UTC (permalink / raw)
  To: Paolo Bonzini, Radim Krčmář
  Cc: KVM, Cornelia Huck, linux-s390, Christian Borntraeger,
	Jens Freimann, David Hildenbrand, Alexander Yarygin

From: David Hildenbrand <dahi@linux.vnet.ibm.com>

Only enable PFMF interpretation if the necessary facility (EDAT1) is
available, otherwise the pfmf handler in priv.c will inject an exception

Reviewed-by: Dominik Dingel <dingel@linux.vnet.ibm.com>
Reviewed-by: Christian Borntraeger <borntraeger@de.ibm.com>
Signed-off-by: David Hildenbrand <dahi@linux.vnet.ibm.com>
Signed-off-by: Christian Borntraeger <borntraeger@de.ibm.com>
---
 arch/s390/kvm/kvm-s390.c | 3 ++-
 1 file changed, 2 insertions(+), 1 deletion(-)

diff --git a/arch/s390/kvm/kvm-s390.c b/arch/s390/kvm/kvm-s390.c
index 668c087..13b3f5e 100644
--- a/arch/s390/kvm/kvm-s390.c
+++ b/arch/s390/kvm/kvm-s390.c
@@ -1649,7 +1649,8 @@ int kvm_arch_vcpu_setup(struct kvm_vcpu *vcpu)
 	if (test_kvm_facility(vcpu->kvm, 50) && test_kvm_facility(vcpu->kvm, 73))
 		vcpu->arch.sie_block->ecb |= 0x10;
 
-	vcpu->arch.sie_block->ecb2  = 8;
+	if (test_kvm_facility(vcpu->kvm, 8))
+		vcpu->arch.sie_block->ecb2 |= 0x08;
 	vcpu->arch.sie_block->eca   = 0xC1002000U;
 	if (sclp.has_siif)
 		vcpu->arch.sie_block->eca |= 1;
-- 
2.5.5

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

* [GIT PULL 04/10] KVM: s390: enable SRS only if enabled for the guest
  2016-05-09 12:26 [GIT PULL 00/10] KVM: s390: features and fixes for 4.7 part2 Christian Borntraeger
  2016-05-09 12:26 ` [GIT PULL 03/10] KVM: s390: enable PFMFI only if guest has EDAT1 Christian Borntraeger
@ 2016-05-09 12:26 ` Christian Borntraeger
  2016-05-10 14:40 ` [GIT PULL 00/10] KVM: s390: features and fixes for 4.7 part2 Paolo Bonzini
  2 siblings, 0 replies; 5+ messages in thread
From: Christian Borntraeger @ 2016-05-09 12:26 UTC (permalink / raw)
  To: Paolo Bonzini, Radim Krčmář
  Cc: KVM, Cornelia Huck, linux-s390, Christian Borntraeger,
	Jens Freimann, David Hildenbrand, Alexander Yarygin

From: David Hildenbrand <dahi@linux.vnet.ibm.com>

If we don't have SIGP SENSE RUNNING STATUS enabled for the guest, let's
not enable interpretation so we can correctly report an invalid order.

Reviewed-by: Christian Borntraeger <borntraeger@de.ibm.com>
Signed-off-by: David Hildenbrand <dahi@linux.vnet.ibm.com>
Signed-off-by: Christian Borntraeger <borntraeger@de.ibm.com>
---
 arch/s390/include/asm/sigp.h | 1 +
 arch/s390/kvm/kvm-s390.c     | 4 +++-
 arch/s390/kvm/sigp.c         | 6 ++++++
 3 files changed, 10 insertions(+), 1 deletion(-)

diff --git a/arch/s390/include/asm/sigp.h b/arch/s390/include/asm/sigp.h
index ec60cf7..1c8f33f 100644
--- a/arch/s390/include/asm/sigp.h
+++ b/arch/s390/include/asm/sigp.h
@@ -27,6 +27,7 @@
 
 /* SIGP cpu status bits */
 
+#define SIGP_STATUS_INVALID_ORDER	0x00000002UL
 #define SIGP_STATUS_CHECK_STOP		0x00000010UL
 #define SIGP_STATUS_STOPPED		0x00000040UL
 #define SIGP_STATUS_EXT_CALL_PENDING	0x00000080UL
diff --git a/arch/s390/kvm/kvm-s390.c b/arch/s390/kvm/kvm-s390.c
index 13b3f5e..e1e375c 100644
--- a/arch/s390/kvm/kvm-s390.c
+++ b/arch/s390/kvm/kvm-s390.c
@@ -1645,7 +1645,9 @@ int kvm_arch_vcpu_setup(struct kvm_vcpu *vcpu)
 
 	kvm_s390_vcpu_setup_model(vcpu);
 
-	vcpu->arch.sie_block->ecb   = 6;
+	vcpu->arch.sie_block->ecb = 0x02;
+	if (test_kvm_facility(vcpu->kvm, 9))
+		vcpu->arch.sie_block->ecb |= 0x04;
 	if (test_kvm_facility(vcpu->kvm, 50) && test_kvm_facility(vcpu->kvm, 73))
 		vcpu->arch.sie_block->ecb |= 0x10;
 
diff --git a/arch/s390/kvm/sigp.c b/arch/s390/kvm/sigp.c
index 77c22d6..28ea0ca 100644
--- a/arch/s390/kvm/sigp.c
+++ b/arch/s390/kvm/sigp.c
@@ -240,6 +240,12 @@ static int __sigp_sense_running(struct kvm_vcpu *vcpu,
 	struct kvm_s390_local_interrupt *li;
 	int rc;
 
+	if (!test_kvm_facility(vcpu->kvm, 9)) {
+		*reg &= 0xffffffff00000000UL;
+		*reg |= SIGP_STATUS_INVALID_ORDER;
+		return SIGP_CC_STATUS_STORED;
+	}
+
 	li = &dst_vcpu->arch.local_int;
 	if (atomic_read(li->cpuflags) & CPUSTAT_RUNNING) {
 		/* running */
-- 
2.5.5

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

* Re: [GIT PULL 00/10] KVM: s390: features and fixes for 4.7 part2
  2016-05-09 12:26 [GIT PULL 00/10] KVM: s390: features and fixes for 4.7 part2 Christian Borntraeger
  2016-05-09 12:26 ` [GIT PULL 03/10] KVM: s390: enable PFMFI only if guest has EDAT1 Christian Borntraeger
  2016-05-09 12:26 ` [GIT PULL 04/10] KVM: s390: enable SRS only if enabled for the guest Christian Borntraeger
@ 2016-05-10 14:40 ` Paolo Bonzini
  2 siblings, 0 replies; 5+ messages in thread
From: Paolo Bonzini @ 2016-05-10 14:40 UTC (permalink / raw)
  To: Christian Borntraeger, Radim Krčmář
  Cc: KVM, Cornelia Huck, linux-s390, Jens Freimann, David Hildenbrand,
	Alexander Yarygin



On 09/05/2016 14:26, Christian Borntraeger wrote:
> Paolo, Radim,
> 
> here is v2 of the the 2nd bunch of s390 patches for 4.7 (kvm/next).
> Only the 2 changed patches are send as reply.
> patch 3: fix hast->has in subject
> patch 4: move define
> 
> 
> Please pull
> 
> The following changes since commit 05b1159e641fa45e885aec8bf8e515117c8977d9:
> 
>   Merge tag 'kvms390-20160420' of git://git.kernel.org/pub/scm/linux/kernel/git/kvms390/linux into next (2016-04-20 15:28:51 +0200)
> 
> are available in the git repository at:
> 
>   git://git.kernel.org/pub/scm/linux/kernel/git/kvms390/linux.git  tags/kvm-s390-next-4.7-2
> 
> for you to fetch changes up to 60a37709ce603da62d0b60699b713558b4cfd513:
> 
>   KVM: s390: Populate mask of non-hypervisor managed facility bits (2016-05-09 13:33:59 +0200)
> 
> ----------------------------------------------------------------
> KVM: s390: features and fixes for 4.7 part2
> 
> - Use hardware provided information about facility bits that do not
>   need any hypervisor activitiy
> - Add missing documentation for KVM_CAP_S390_RI
> - Some updates/fixes for handling cpu models and facilities
> 
> ----------------------------------------------------------------
> Alexander Yarygin (3):
>       KVM: s390: Enable all facility bits that are known good for passthrough
>       s390/sclp: Add hmfai field
>       KVM: s390: Populate mask of non-hypervisor managed facility bits
> 
> David Hildenbrand (7):
>       KVM: s390: cmma: don't check entry content
>       KVM: s390: support NQ only if the facility is enabled for the guest
>       KVM: s390: enable PFMFI only if guest has EDAT1
>       KVM: s390: enable SRS only if enabled for the guest
>       KVM: s390: cleanup cpuid handling
>       KVM: s390: force ibc into valid range
>       KVM: s390: document KVM_CAP_S390_RI
> 
>  Documentation/virtual/kvm/api.txt |  8 ++++++
>  arch/s390/include/asm/kvm_host.h  |  6 +----
>  arch/s390/include/asm/sclp.h      |  1 +
>  arch/s390/include/asm/sigp.h      |  1 +
>  arch/s390/kvm/kvm-s390.c          | 55 +++++++++++++++++++++++++++++----------
>  arch/s390/kvm/priv.c              | 21 +++++----------
>  arch/s390/kvm/sigp.c              |  6 +++++
>  drivers/s390/char/sclp_early.c    |  6 ++++-
>  8 files changed, 70 insertions(+), 34 deletions(-)
> 

Pulled, thanks.

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

end of thread, other threads:[~2016-05-10 14:40 UTC | newest]

Thread overview: 5+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2016-05-09 12:26 [GIT PULL 00/10] KVM: s390: features and fixes for 4.7 part2 Christian Borntraeger
2016-05-09 12:26 ` [GIT PULL 03/10] KVM: s390: enable PFMFI only if guest has EDAT1 Christian Borntraeger
2016-05-09 12:26 ` [GIT PULL 04/10] KVM: s390: enable SRS only if enabled for the guest Christian Borntraeger
2016-05-10 14:40 ` [GIT PULL 00/10] KVM: s390: features and fixes for 4.7 part2 Paolo Bonzini
  -- strict thread matches above, loose matches on Subject: below --
2016-05-09  9:20 Christian Borntraeger

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox