All of lore.kernel.org
 help / color / mirror / Atom feed
From: Christian Borntraeger <borntraeger@de.ibm.com>
To: "Paolo Bonzini" <pbonzini@redhat.com>,
	"Radim Krčmář" <rkrcmar@redhat.com>
Cc: KVM <kvm@vger.kernel.org>, Cornelia Huck <cohuck@redhat.com>,
	Christian Borntraeger <borntraeger@de.ibm.com>,
	linux-s390 <linux-s390@vger.kernel.org>,
	Tony Krowiak <akrowiak@linux.vnet.ibm.com>
Subject: [GIT PULL 5/9] KVM: s390: SIE considerations for AP Queue virtualization
Date: Fri, 10 Nov 2017 09:00:09 +0100	[thread overview]
Message-ID: <20171110080013.111004-6-borntraeger@de.ibm.com> (raw)
In-Reply-To: <20171110080013.111004-1-borntraeger@de.ibm.com>

From: Tony Krowiak <akrowiak@linux.vnet.ibm.com>

The Crypto Control Block (CRYCB) is referenced by the SIE state
description and controls KVM guest access to the Adjunct
Processor (AP) adapters, usage domains and control domains.
This patch defines the AP control blocks to be used for
controlling guest access to the AP adapters and domains.

Signed-off-by: Tony Krowiak <akrowiak@linux.vnet.ibm.com>
Message-Id: <1507916344-3896-2-git-send-email-akrowiak@linux.vnet.ibm.com>
Acked-by: Cornelia Huck <cohuck@redhat.com>
Signed-off-by: Christian Borntraeger <borntraeger@de.ibm.com>
---
 arch/s390/include/asm/kvm_host.h | 25 +++++++++++++++++++++----
 1 file changed, 21 insertions(+), 4 deletions(-)

diff --git a/arch/s390/include/asm/kvm_host.h b/arch/s390/include/asm/kvm_host.h
index fd006a2..f3a9b5a 100644
--- a/arch/s390/include/asm/kvm_host.h
+++ b/arch/s390/include/asm/kvm_host.h
@@ -685,11 +685,28 @@ struct kvm_s390_crypto {
 	__u8 dea_kw;
 };
 
+#define APCB0_MASK_SIZE 1
+struct kvm_s390_apcb0 {
+	__u64 apm[APCB0_MASK_SIZE];		/* 0x0000 */
+	__u64 aqm[APCB0_MASK_SIZE];		/* 0x0008 */
+	__u64 adm[APCB0_MASK_SIZE];		/* 0x0010 */
+	__u64 reserved18;			/* 0x0018 */
+};
+
+#define APCB1_MASK_SIZE 4
+struct kvm_s390_apcb1 {
+	__u64 apm[APCB1_MASK_SIZE];		/* 0x0000 */
+	__u64 aqm[APCB1_MASK_SIZE];		/* 0x0020 */
+	__u64 adm[APCB1_MASK_SIZE];		/* 0x0040 */
+	__u64 reserved60[4];			/* 0x0060 */
+};
+
 struct kvm_s390_crypto_cb {
-	__u8    reserved00[72];                 /* 0x0000 */
-	__u8    dea_wrapping_key_mask[24];      /* 0x0048 */
-	__u8    aes_wrapping_key_mask[32];      /* 0x0060 */
-	__u8    reserved80[128];                /* 0x0080 */
+	struct kvm_s390_apcb0 apcb0;		/* 0x0000 */
+	__u8   reserved20[0x0048 - 0x0020];	/* 0x0020 */
+	__u8   dea_wrapping_key_mask[24];	/* 0x0048 */
+	__u8   aes_wrapping_key_mask[32];	/* 0x0060 */
+	struct kvm_s390_apcb1 apcb1;		/* 0x0080 */
 };
 
 /*
-- 
2.9.4

  parent reply	other threads:[~2017-11-10  8:00 UTC|newest]

Thread overview: 15+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2017-11-10  8:00 [GIT PULL 0/9] KVM: s390: fixes and improvements for 4.15 Christian Borntraeger
2017-11-10  8:00 ` [GIT PULL 1/9] s390/sthyi: reorganize sthyi implementation Christian Borntraeger
2017-11-10 13:05   ` Janosch Frank
2017-11-10 13:39     ` Christian Borntraeger
2017-11-10  8:00 ` [GIT PULL 2/9] s390/sthyi: add cache to store hypervisor info Christian Borntraeger
2017-11-10  8:00 ` [GIT PULL 3/9] s390/sthyi: add s390_sthyi system call Christian Borntraeger
2017-11-10  8:00 ` [GIT PULL 4/9] KVM: s390: document memory ordering for kvm_s390_vcpu_wakeup Christian Borntraeger
2017-11-10  8:00 ` Christian Borntraeger [this message]
2017-11-10 12:46   ` [GIT PULL 5/9] KVM: s390: SIE considerations for AP Queue virtualization David Hildenbrand
2017-11-10 13:45     ` Christian Borntraeger
2017-11-10 13:47       ` David Hildenbrand
2017-11-10  8:00 ` [GIT PULL 6/9] KVM: s390: vsie: use common code functions for pinning Christian Borntraeger
2017-11-10  8:00 ` [GIT PULL 7/9] KVM: s390: abstract conversion between isc and enum irq_types Christian Borntraeger
2017-11-10  8:00 ` [GIT PULL 8/9] KVM: s390: clear_io_irq() requests are not expected for adapter interrupts Christian Borntraeger
2017-11-10  8:00 ` [GIT PULL 9/9] KVM: s390: provide a capability for AIS state migration Christian Borntraeger

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=20171110080013.111004-6-borntraeger@de.ibm.com \
    --to=borntraeger@de.ibm.com \
    --cc=akrowiak@linux.vnet.ibm.com \
    --cc=cohuck@redhat.com \
    --cc=kvm@vger.kernel.org \
    --cc=linux-s390@vger.kernel.org \
    --cc=pbonzini@redhat.com \
    --cc=rkrcmar@redhat.com \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.