All of lore.kernel.org
 help / color / mirror / Atom feed
diff for duplicates of <tip-2vvwh2o19orn56di0ksrtgzr@git.kernel.org>

diff --git a/a/1.txt b/N1/1.txt
index e9ca8e2..de61f07 100644
--- a/a/1.txt
+++ b/N1/1.txt
@@ -1,43 +1,230 @@
-Commit-ID:  0ee03d936cbb300309ed6154ac1cc12b63e9785f
-Gitweb:     https://git.kernel.org/tip/0ee03d936cbb300309ed6154ac1cc12b63e9785f
+Commit-ID:  0210c156d7fd330bce1c2c842bee9d27f1c5dfeb
+Gitweb:     https://git.kernel.org/tip/0210c156d7fd330bce1c2c842bee9d27f1c5dfeb
 Author:     Arnaldo Carvalho de Melo <acme@redhat.com>
-AuthorDate: Tue, 11 Sep 2018 10:57:13 -0300
+AuthorDate: Tue, 11 Sep 2018 11:18:58 -0300
 Committer:  Arnaldo Carvalho de Melo <acme@redhat.com>
-CommitDate: Tue, 11 Sep 2018 10:57:13 -0300
+CommitDate: Tue, 11 Sep 2018 13:09:26 -0300
 
-tools headers uapi: Update tools's copy of linux/perf_event.h
+tools headers uapi: Update tools's copies of kvm headers
 
 To get the changes in:
 
-	09121255c784 ("perf/UAPI: Clearly mark __PERF_SAMPLE_CALLCHAIN_EARLY as internal use")
+	a449938297e5 ("KVM: s390: Add huge page enablement control")
+	8fcc4b5923af ("kvm: nVMX: Introduce KVM_CAP_NESTED_STATE")
+	be26b3a73413 ("arm64: KVM: export the capability to set guest SError syndrome")
+	b7b27facc7b5 ("arm/arm64: KVM: Add KVM_GET/SET_VCPU_EVENTS")
+	b0960b9569db ("KVM: arm: Add 32bit get/set events support")
+	a3da7b4a3be5 ("KVM: s390: add etoken support for guests")
 
-This cures the following warning during perf's build:
+This makes 'perf trace' automagically get aware of these new ioctls:
 
-	Warning: Kernel ABI header at 'tools/include/uapi/linux/perf_event.h' differs from latest version at 'include/uapi/linux/perf_event.h'
-	diff -u tools/include/uapi/linux/perf_event.h include/uapi/linux/perf_event.h
+  $ cp include/uapi/linux/kvm.h tools/include/uapi/linux/kvm.h
+  $ tools/perf/trace/beauty/kvm_ioctl.sh  > /tmp/after
+  $ diff -u /tmp/before /tmp/after
+  --- /tmp/before	2018-09-11 11:18:29.173207586 -0300
+  +++ /tmp/after	2018-09-11 11:18:38.488200446 -0300
+  @@ -84,6 +84,8 @@
+        [0xbb] = "MEMORY_ENCRYPT_REG_REGION",
+        [0xbc] = "MEMORY_ENCRYPT_UNREG_REGION",
+        [0xbd] = "HYPERV_EVENTFD",
+  +     [0xbe] = "GET_NESTED_STATE",
+  +     [0xbf] = "SET_NESTED_STATE",
+        [0xe0] = "CREATE_DEVICE",
+        [0xe1] = "SET_DEVICE_ATTR",
+        [0xe2] = "G
+
+And cures the following warning during perf's build:
+
+	Warning: Kernel ABI header at 'tools/include/uapi/linux/kvm.h' differs from latest version at 'include/uapi/linux/kvm.h'
+	diff -u tools/include/uapi/linux/kvm.h include/uapi/linux/kvm.h
 
-Cc: Peter Zijlstra <peterz@infradead.org>
 Cc: Adrian Hunter <adrian.hunter@intel.com>
+Cc: Christian Borntraeger <borntraeger@de.ibm.com>
+Cc: Cornelia Huck <cohuck@redhat.com>
 Cc: David Ahern <dsahern@gmail.com>
+Cc: David Hildenbrand <david@redhat.com>
+Cc: Dongjiu Geng <gengdongjiu@huawei.com>
+Cc: Eduardo Habkost <ehabkost@redhat.com>
+Cc: James Morse <james.morse@arm.com>
+Cc: Janosch Frank <frankja@linux.ibm.com>
+Cc: Jim Mattson <jmattson@google.com>
 Cc: Jiri Olsa <jolsa@kernel.org>
+Cc: Marc Zyngier <marc.zyngier@arm.com>
 Cc: Namhyung Kim <namhyung@kernel.org>
+Cc: Paolo Bonzini <pbonzini@redhat.com>
+Cc: Peter Zijlstra <peterz@infradead.org>
 Cc: Wang Nan <wangnan0@huawei.com>
 Link: https://lkml.kernel.org/n/tip-2vvwh2o19orn56di0ksrtgzr@git.kernel.org
+Signed-off-by: Arnaldo Carvalho de Melo <acme@redhat.com>
+
 Signed-off-by: Arnaldo Carvalho de Melo <acme@redhat.com>
 ---
- tools/include/uapi/linux/perf_event.h | 2 +-
- 1 file changed, 1 insertion(+), 1 deletion(-)
+ tools/arch/arm/include/uapi/asm/kvm.h   | 13 ++++++++++++
+ tools/arch/arm64/include/uapi/asm/kvm.h | 13 ++++++++++++
+ tools/arch/s390/include/uapi/asm/kvm.h  |  5 ++++-
+ tools/arch/x86/include/uapi/asm/kvm.h   | 37 +++++++++++++++++++++++++++++++++
+ tools/include/uapi/linux/kvm.h          |  6 ++++++
+ 5 files changed, 73 insertions(+), 1 deletion(-)
 
-diff --git a/tools/include/uapi/linux/perf_event.h b/tools/include/uapi/linux/perf_event.h
-index eeb787b1c53c..f35eb72739c0 100644
---- a/tools/include/uapi/linux/perf_event.h
-+++ b/tools/include/uapi/linux/perf_event.h
-@@ -144,7 +144,7 @@ enum perf_event_sample_format {
+diff --git a/tools/arch/arm/include/uapi/asm/kvm.h b/tools/arch/arm/include/uapi/asm/kvm.h
+index 16e006f708ca..4602464ebdfb 100644
+--- a/tools/arch/arm/include/uapi/asm/kvm.h
++++ b/tools/arch/arm/include/uapi/asm/kvm.h
+@@ -27,6 +27,7 @@
+ #define __KVM_HAVE_GUEST_DEBUG
+ #define __KVM_HAVE_IRQ_LINE
+ #define __KVM_HAVE_READONLY_MEM
++#define __KVM_HAVE_VCPU_EVENTS
+ 
+ #define KVM_COALESCED_MMIO_PAGE_OFFSET 1
+ 
+@@ -125,6 +126,18 @@ struct kvm_sync_regs {
+ struct kvm_arch_memory_slot {
+ };
+ 
++/* for KVM_GET/SET_VCPU_EVENTS */
++struct kvm_vcpu_events {
++	struct {
++		__u8 serror_pending;
++		__u8 serror_has_esr;
++		/* Align it to 8 bytes */
++		__u8 pad[6];
++		__u64 serror_esr;
++	} exception;
++	__u32 reserved[12];
++};
++
+ /* If you need to interpret the index values, here is the key: */
+ #define KVM_REG_ARM_COPROC_MASK		0x000000000FFF0000
+ #define KVM_REG_ARM_COPROC_SHIFT	16
+diff --git a/tools/arch/arm64/include/uapi/asm/kvm.h b/tools/arch/arm64/include/uapi/asm/kvm.h
+index 4e76630dd655..97c3478ee6e7 100644
+--- a/tools/arch/arm64/include/uapi/asm/kvm.h
++++ b/tools/arch/arm64/include/uapi/asm/kvm.h
+@@ -39,6 +39,7 @@
+ #define __KVM_HAVE_GUEST_DEBUG
+ #define __KVM_HAVE_IRQ_LINE
+ #define __KVM_HAVE_READONLY_MEM
++#define __KVM_HAVE_VCPU_EVENTS
  
- 	PERF_SAMPLE_MAX = 1U << 20,		/* non-ABI */
+ #define KVM_COALESCED_MMIO_PAGE_OFFSET 1
  
--	__PERF_SAMPLE_CALLCHAIN_EARLY		= 1ULL << 63,
-+	__PERF_SAMPLE_CALLCHAIN_EARLY		= 1ULL << 63, /* non-ABI; internal use */
+@@ -154,6 +155,18 @@ struct kvm_sync_regs {
+ struct kvm_arch_memory_slot {
  };
  
++/* for KVM_GET/SET_VCPU_EVENTS */
++struct kvm_vcpu_events {
++	struct {
++		__u8 serror_pending;
++		__u8 serror_has_esr;
++		/* Align it to 8 bytes */
++		__u8 pad[6];
++		__u64 serror_esr;
++	} exception;
++	__u32 reserved[12];
++};
++
+ /* If you need to interpret the index values, here is the key: */
+ #define KVM_REG_ARM_COPROC_MASK		0x000000000FFF0000
+ #define KVM_REG_ARM_COPROC_SHIFT	16
+diff --git a/tools/arch/s390/include/uapi/asm/kvm.h b/tools/arch/s390/include/uapi/asm/kvm.h
+index 4cdaa55fabfe..9a50f02b9894 100644
+--- a/tools/arch/s390/include/uapi/asm/kvm.h
++++ b/tools/arch/s390/include/uapi/asm/kvm.h
+@@ -4,7 +4,7 @@
  /*
+  * KVM s390 specific structures and definitions
+  *
+- * Copyright IBM Corp. 2008
++ * Copyright IBM Corp. 2008, 2018
+  *
+  *    Author(s): Carsten Otte <cotte@de.ibm.com>
+  *               Christian Borntraeger <borntraeger@de.ibm.com>
+@@ -225,6 +225,7 @@ struct kvm_guest_debug_arch {
+ #define KVM_SYNC_FPRS   (1UL << 8)
+ #define KVM_SYNC_GSCB   (1UL << 9)
+ #define KVM_SYNC_BPBC   (1UL << 10)
++#define KVM_SYNC_ETOKEN (1UL << 11)
+ /* length and alignment of the sdnx as a power of two */
+ #define SDNXC 8
+ #define SDNXL (1UL << SDNXC)
+@@ -258,6 +259,8 @@ struct kvm_sync_regs {
+ 		struct {
+ 			__u64 reserved1[2];
+ 			__u64 gscb[4];
++			__u64 etoken;
++			__u64 etoken_extension;
+ 		};
+ 	};
+ };
+diff --git a/tools/arch/x86/include/uapi/asm/kvm.h b/tools/arch/x86/include/uapi/asm/kvm.h
+index c535c2fdea13..86299efa804a 100644
+--- a/tools/arch/x86/include/uapi/asm/kvm.h
++++ b/tools/arch/x86/include/uapi/asm/kvm.h
+@@ -378,4 +378,41 @@ struct kvm_sync_regs {
+ #define KVM_X86_QUIRK_LINT0_REENABLED	(1 << 0)
+ #define KVM_X86_QUIRK_CD_NW_CLEARED	(1 << 1)
+ 
++#define KVM_STATE_NESTED_GUEST_MODE	0x00000001
++#define KVM_STATE_NESTED_RUN_PENDING	0x00000002
++
++#define KVM_STATE_NESTED_SMM_GUEST_MODE	0x00000001
++#define KVM_STATE_NESTED_SMM_VMXON	0x00000002
++
++struct kvm_vmx_nested_state {
++	__u64 vmxon_pa;
++	__u64 vmcs_pa;
++
++	struct {
++		__u16 flags;
++	} smm;
++};
++
++/* for KVM_CAP_NESTED_STATE */
++struct kvm_nested_state {
++	/* KVM_STATE_* flags */
++	__u16 flags;
++
++	/* 0 for VMX, 1 for SVM.  */
++	__u16 format;
++
++	/* 128 for SVM, 128 + VMCS size for VMX.  */
++	__u32 size;
++
++	union {
++		/* VMXON, VMCS */
++		struct kvm_vmx_nested_state vmx;
++
++		/* Pad the header to 128 bytes.  */
++		__u8 pad[120];
++	};
++
++	__u8 data[0];
++};
++
+ #endif /* _ASM_X86_KVM_H */
+diff --git a/tools/include/uapi/linux/kvm.h b/tools/include/uapi/linux/kvm.h
+index b6270a3b38e9..07548de5c988 100644
+--- a/tools/include/uapi/linux/kvm.h
++++ b/tools/include/uapi/linux/kvm.h
+@@ -949,6 +949,9 @@ struct kvm_ppc_resize_hpt {
+ #define KVM_CAP_GET_MSR_FEATURES 153
+ #define KVM_CAP_HYPERV_EVENTFD 154
+ #define KVM_CAP_HYPERV_TLBFLUSH 155
++#define KVM_CAP_S390_HPAGE_1M 156
++#define KVM_CAP_NESTED_STATE 157
++#define KVM_CAP_ARM_INJECT_SERROR_ESR 158
+ 
+ #ifdef KVM_CAP_IRQ_ROUTING
+ 
+@@ -1391,6 +1394,9 @@ struct kvm_enc_region {
+ /* Available with KVM_CAP_HYPERV_EVENTFD */
+ #define KVM_HYPERV_EVENTFD        _IOW(KVMIO,  0xbd, struct kvm_hyperv_eventfd)
+ 
++/* Available with KVM_CAP_NESTED_STATE */
++#define KVM_GET_NESTED_STATE         _IOWR(KVMIO, 0xbe, struct kvm_nested_state)
++#define KVM_SET_NESTED_STATE         _IOW(KVMIO,  0xbf, struct kvm_nested_state)
+ 
+ /* Secure Encrypted Virtualization command */
+ enum sev_cmd_id {
diff --git a/a/content_digest b/N1/content_digest
index 4d54ad0..4fd51d3 100644
--- a/a/content_digest
+++ b/N1/content_digest
@@ -1,62 +1,259 @@
  "From\0tip-bot for Arnaldo Carvalho de Melo <tipbot@zytor.com>\0"
- "Subject\0[tip:perf/urgent] tools headers uapi: Update tools's copy of linux/perf_event.h\0"
- "Date\0Wed, 12 Sep 2018 12:18:53 -0700\0"
+ "Subject\0[tip:perf/urgent] tools headers uapi: Update tools's copies of kvm headers\0"
+ "Date\0Wed, 12 Sep 2018 12:20:31 -0700\0"
  "To\0linux-tip-commits@vger.kernel.org\0"
- "Cc\0dsahern@gmail.com"
-  tglx@linutronix.de
-  linux-kernel@vger.kernel.org
-  hpa@zytor.com
+ "Cc\0mingo@kernel.org"
+  jmattson@google.com
+  pbonzini@redhat.com
+  wangnan0@huawei.com
+  dsahern@gmail.com
   jolsa@kernel.org
+  borntraeger@de.ibm.com
+  marc.zyngier@arm.com
+  peterz@infradead.org
+  james.morse@arm.com
   namhyung@kernel.org
-  mingo@kernel.org
-  acme@redhat.com
-  wangnan0@huawei.com
+  cohuck@redhat.com
+  david@redhat.com
+  ehabkost@redhat.com
+  linux-kernel@vger.kernel.org
+  gengdongjiu@huawei.com
+  hpa@zytor.com
+  tglx@linutronix.de
   adrian.hunter@intel.com
- " peterz@infradead.org\0"
+  acme@redhat.com
+ " frankja@linux.ibm.com\0"
  "\00:1\0"
  "b\0"
- "Commit-ID:  0ee03d936cbb300309ed6154ac1cc12b63e9785f\n"
- "Gitweb:     https://git.kernel.org/tip/0ee03d936cbb300309ed6154ac1cc12b63e9785f\n"
+ "Commit-ID:  0210c156d7fd330bce1c2c842bee9d27f1c5dfeb\n"
+ "Gitweb:     https://git.kernel.org/tip/0210c156d7fd330bce1c2c842bee9d27f1c5dfeb\n"
  "Author:     Arnaldo Carvalho de Melo <acme@redhat.com>\n"
- "AuthorDate: Tue, 11 Sep 2018 10:57:13 -0300\n"
+ "AuthorDate: Tue, 11 Sep 2018 11:18:58 -0300\n"
  "Committer:  Arnaldo Carvalho de Melo <acme@redhat.com>\n"
- "CommitDate: Tue, 11 Sep 2018 10:57:13 -0300\n"
+ "CommitDate: Tue, 11 Sep 2018 13:09:26 -0300\n"
  "\n"
- "tools headers uapi: Update tools's copy of linux/perf_event.h\n"
+ "tools headers uapi: Update tools's copies of kvm headers\n"
  "\n"
  "To get the changes in:\n"
  "\n"
- "\t09121255c784 (\"perf/UAPI: Clearly mark __PERF_SAMPLE_CALLCHAIN_EARLY as internal use\")\n"
+ "\ta449938297e5 (\"KVM: s390: Add huge page enablement control\")\n"
+ "\t8fcc4b5923af (\"kvm: nVMX: Introduce KVM_CAP_NESTED_STATE\")\n"
+ "\tbe26b3a73413 (\"arm64: KVM: export the capability to set guest SError syndrome\")\n"
+ "\tb7b27facc7b5 (\"arm/arm64: KVM: Add KVM_GET/SET_VCPU_EVENTS\")\n"
+ "\tb0960b9569db (\"KVM: arm: Add 32bit get/set events support\")\n"
+ "\ta3da7b4a3be5 (\"KVM: s390: add etoken support for guests\")\n"
  "\n"
- "This cures the following warning during perf's build:\n"
+ "This makes 'perf trace' automagically get aware of these new ioctls:\n"
  "\n"
- "\tWarning: Kernel ABI header at 'tools/include/uapi/linux/perf_event.h' differs from latest version at 'include/uapi/linux/perf_event.h'\n"
- "\tdiff -u tools/include/uapi/linux/perf_event.h include/uapi/linux/perf_event.h\n"
+ "  $ cp include/uapi/linux/kvm.h tools/include/uapi/linux/kvm.h\n"
+ "  $ tools/perf/trace/beauty/kvm_ioctl.sh  > /tmp/after\n"
+ "  $ diff -u /tmp/before /tmp/after\n"
+ "  --- /tmp/before\t2018-09-11 11:18:29.173207586 -0300\n"
+ "  +++ /tmp/after\t2018-09-11 11:18:38.488200446 -0300\n"
+ "  @@ -84,6 +84,8 @@\n"
+ "        [0xbb] = \"MEMORY_ENCRYPT_REG_REGION\",\n"
+ "        [0xbc] = \"MEMORY_ENCRYPT_UNREG_REGION\",\n"
+ "        [0xbd] = \"HYPERV_EVENTFD\",\n"
+ "  +     [0xbe] = \"GET_NESTED_STATE\",\n"
+ "  +     [0xbf] = \"SET_NESTED_STATE\",\n"
+ "        [0xe0] = \"CREATE_DEVICE\",\n"
+ "        [0xe1] = \"SET_DEVICE_ATTR\",\n"
+ "        [0xe2] = \"G\n"
+ "\n"
+ "And cures the following warning during perf's build:\n"
+ "\n"
+ "\tWarning: Kernel ABI header at 'tools/include/uapi/linux/kvm.h' differs from latest version at 'include/uapi/linux/kvm.h'\n"
+ "\tdiff -u tools/include/uapi/linux/kvm.h include/uapi/linux/kvm.h\n"
  "\n"
- "Cc: Peter Zijlstra <peterz@infradead.org>\n"
  "Cc: Adrian Hunter <adrian.hunter@intel.com>\n"
+ "Cc: Christian Borntraeger <borntraeger@de.ibm.com>\n"
+ "Cc: Cornelia Huck <cohuck@redhat.com>\n"
  "Cc: David Ahern <dsahern@gmail.com>\n"
+ "Cc: David Hildenbrand <david@redhat.com>\n"
+ "Cc: Dongjiu Geng <gengdongjiu@huawei.com>\n"
+ "Cc: Eduardo Habkost <ehabkost@redhat.com>\n"
+ "Cc: James Morse <james.morse@arm.com>\n"
+ "Cc: Janosch Frank <frankja@linux.ibm.com>\n"
+ "Cc: Jim Mattson <jmattson@google.com>\n"
  "Cc: Jiri Olsa <jolsa@kernel.org>\n"
+ "Cc: Marc Zyngier <marc.zyngier@arm.com>\n"
  "Cc: Namhyung Kim <namhyung@kernel.org>\n"
+ "Cc: Paolo Bonzini <pbonzini@redhat.com>\n"
+ "Cc: Peter Zijlstra <peterz@infradead.org>\n"
  "Cc: Wang Nan <wangnan0@huawei.com>\n"
  "Link: https://lkml.kernel.org/n/tip-2vvwh2o19orn56di0ksrtgzr@git.kernel.org\n"
  "Signed-off-by: Arnaldo Carvalho de Melo <acme@redhat.com>\n"
+ "\n"
+ "Signed-off-by: Arnaldo Carvalho de Melo <acme@redhat.com>\n"
  "---\n"
- " tools/include/uapi/linux/perf_event.h | 2 +-\n"
- " 1 file changed, 1 insertion(+), 1 deletion(-)\n"
+ " tools/arch/arm/include/uapi/asm/kvm.h   | 13 ++++++++++++\n"
+ " tools/arch/arm64/include/uapi/asm/kvm.h | 13 ++++++++++++\n"
+ " tools/arch/s390/include/uapi/asm/kvm.h  |  5 ++++-\n"
+ " tools/arch/x86/include/uapi/asm/kvm.h   | 37 +++++++++++++++++++++++++++++++++\n"
+ " tools/include/uapi/linux/kvm.h          |  6 ++++++\n"
+ " 5 files changed, 73 insertions(+), 1 deletion(-)\n"
  "\n"
- "diff --git a/tools/include/uapi/linux/perf_event.h b/tools/include/uapi/linux/perf_event.h\n"
- "index eeb787b1c53c..f35eb72739c0 100644\n"
- "--- a/tools/include/uapi/linux/perf_event.h\n"
- "+++ b/tools/include/uapi/linux/perf_event.h\n"
- "@@ -144,7 +144,7 @@ enum perf_event_sample_format {\n"
+ "diff --git a/tools/arch/arm/include/uapi/asm/kvm.h b/tools/arch/arm/include/uapi/asm/kvm.h\n"
+ "index 16e006f708ca..4602464ebdfb 100644\n"
+ "--- a/tools/arch/arm/include/uapi/asm/kvm.h\n"
+ "+++ b/tools/arch/arm/include/uapi/asm/kvm.h\n"
+ "@@ -27,6 +27,7 @@\n"
+ " #define __KVM_HAVE_GUEST_DEBUG\n"
+ " #define __KVM_HAVE_IRQ_LINE\n"
+ " #define __KVM_HAVE_READONLY_MEM\n"
+ "+#define __KVM_HAVE_VCPU_EVENTS\n"
+ " \n"
+ " #define KVM_COALESCED_MMIO_PAGE_OFFSET 1\n"
+ " \n"
+ "@@ -125,6 +126,18 @@ struct kvm_sync_regs {\n"
+ " struct kvm_arch_memory_slot {\n"
+ " };\n"
+ " \n"
+ "+/* for KVM_GET/SET_VCPU_EVENTS */\n"
+ "+struct kvm_vcpu_events {\n"
+ "+\tstruct {\n"
+ "+\t\t__u8 serror_pending;\n"
+ "+\t\t__u8 serror_has_esr;\n"
+ "+\t\t/* Align it to 8 bytes */\n"
+ "+\t\t__u8 pad[6];\n"
+ "+\t\t__u64 serror_esr;\n"
+ "+\t} exception;\n"
+ "+\t__u32 reserved[12];\n"
+ "+};\n"
+ "+\n"
+ " /* If you need to interpret the index values, here is the key: */\n"
+ " #define KVM_REG_ARM_COPROC_MASK\t\t0x000000000FFF0000\n"
+ " #define KVM_REG_ARM_COPROC_SHIFT\t16\n"
+ "diff --git a/tools/arch/arm64/include/uapi/asm/kvm.h b/tools/arch/arm64/include/uapi/asm/kvm.h\n"
+ "index 4e76630dd655..97c3478ee6e7 100644\n"
+ "--- a/tools/arch/arm64/include/uapi/asm/kvm.h\n"
+ "+++ b/tools/arch/arm64/include/uapi/asm/kvm.h\n"
+ "@@ -39,6 +39,7 @@\n"
+ " #define __KVM_HAVE_GUEST_DEBUG\n"
+ " #define __KVM_HAVE_IRQ_LINE\n"
+ " #define __KVM_HAVE_READONLY_MEM\n"
+ "+#define __KVM_HAVE_VCPU_EVENTS\n"
  " \n"
- " \tPERF_SAMPLE_MAX = 1U << 20,\t\t/* non-ABI */\n"
+ " #define KVM_COALESCED_MMIO_PAGE_OFFSET 1\n"
  " \n"
- "-\t__PERF_SAMPLE_CALLCHAIN_EARLY\t\t= 1ULL << 63,\n"
- "+\t__PERF_SAMPLE_CALLCHAIN_EARLY\t\t= 1ULL << 63, /* non-ABI; internal use */\n"
+ "@@ -154,6 +155,18 @@ struct kvm_sync_regs {\n"
+ " struct kvm_arch_memory_slot {\n"
  " };\n"
  " \n"
-  /*
+ "+/* for KVM_GET/SET_VCPU_EVENTS */\n"
+ "+struct kvm_vcpu_events {\n"
+ "+\tstruct {\n"
+ "+\t\t__u8 serror_pending;\n"
+ "+\t\t__u8 serror_has_esr;\n"
+ "+\t\t/* Align it to 8 bytes */\n"
+ "+\t\t__u8 pad[6];\n"
+ "+\t\t__u64 serror_esr;\n"
+ "+\t} exception;\n"
+ "+\t__u32 reserved[12];\n"
+ "+};\n"
+ "+\n"
+ " /* If you need to interpret the index values, here is the key: */\n"
+ " #define KVM_REG_ARM_COPROC_MASK\t\t0x000000000FFF0000\n"
+ " #define KVM_REG_ARM_COPROC_SHIFT\t16\n"
+ "diff --git a/tools/arch/s390/include/uapi/asm/kvm.h b/tools/arch/s390/include/uapi/asm/kvm.h\n"
+ "index 4cdaa55fabfe..9a50f02b9894 100644\n"
+ "--- a/tools/arch/s390/include/uapi/asm/kvm.h\n"
+ "+++ b/tools/arch/s390/include/uapi/asm/kvm.h\n"
+ "@@ -4,7 +4,7 @@\n"
+ " /*\n"
+ "  * KVM s390 specific structures and definitions\n"
+ "  *\n"
+ "- * Copyright IBM Corp. 2008\n"
+ "+ * Copyright IBM Corp. 2008, 2018\n"
+ "  *\n"
+ "  *    Author(s): Carsten Otte <cotte@de.ibm.com>\n"
+ "  *               Christian Borntraeger <borntraeger@de.ibm.com>\n"
+ "@@ -225,6 +225,7 @@ struct kvm_guest_debug_arch {\n"
+ " #define KVM_SYNC_FPRS   (1UL << 8)\n"
+ " #define KVM_SYNC_GSCB   (1UL << 9)\n"
+ " #define KVM_SYNC_BPBC   (1UL << 10)\n"
+ "+#define KVM_SYNC_ETOKEN (1UL << 11)\n"
+ " /* length and alignment of the sdnx as a power of two */\n"
+ " #define SDNXC 8\n"
+ " #define SDNXL (1UL << SDNXC)\n"
+ "@@ -258,6 +259,8 @@ struct kvm_sync_regs {\n"
+ " \t\tstruct {\n"
+ " \t\t\t__u64 reserved1[2];\n"
+ " \t\t\t__u64 gscb[4];\n"
+ "+\t\t\t__u64 etoken;\n"
+ "+\t\t\t__u64 etoken_extension;\n"
+ " \t\t};\n"
+ " \t};\n"
+ " };\n"
+ "diff --git a/tools/arch/x86/include/uapi/asm/kvm.h b/tools/arch/x86/include/uapi/asm/kvm.h\n"
+ "index c535c2fdea13..86299efa804a 100644\n"
+ "--- a/tools/arch/x86/include/uapi/asm/kvm.h\n"
+ "+++ b/tools/arch/x86/include/uapi/asm/kvm.h\n"
+ "@@ -378,4 +378,41 @@ struct kvm_sync_regs {\n"
+ " #define KVM_X86_QUIRK_LINT0_REENABLED\t(1 << 0)\n"
+ " #define KVM_X86_QUIRK_CD_NW_CLEARED\t(1 << 1)\n"
+ " \n"
+ "+#define KVM_STATE_NESTED_GUEST_MODE\t0x00000001\n"
+ "+#define KVM_STATE_NESTED_RUN_PENDING\t0x00000002\n"
+ "+\n"
+ "+#define KVM_STATE_NESTED_SMM_GUEST_MODE\t0x00000001\n"
+ "+#define KVM_STATE_NESTED_SMM_VMXON\t0x00000002\n"
+ "+\n"
+ "+struct kvm_vmx_nested_state {\n"
+ "+\t__u64 vmxon_pa;\n"
+ "+\t__u64 vmcs_pa;\n"
+ "+\n"
+ "+\tstruct {\n"
+ "+\t\t__u16 flags;\n"
+ "+\t} smm;\n"
+ "+};\n"
+ "+\n"
+ "+/* for KVM_CAP_NESTED_STATE */\n"
+ "+struct kvm_nested_state {\n"
+ "+\t/* KVM_STATE_* flags */\n"
+ "+\t__u16 flags;\n"
+ "+\n"
+ "+\t/* 0 for VMX, 1 for SVM.  */\n"
+ "+\t__u16 format;\n"
+ "+\n"
+ "+\t/* 128 for SVM, 128 + VMCS size for VMX.  */\n"
+ "+\t__u32 size;\n"
+ "+\n"
+ "+\tunion {\n"
+ "+\t\t/* VMXON, VMCS */\n"
+ "+\t\tstruct kvm_vmx_nested_state vmx;\n"
+ "+\n"
+ "+\t\t/* Pad the header to 128 bytes.  */\n"
+ "+\t\t__u8 pad[120];\n"
+ "+\t};\n"
+ "+\n"
+ "+\t__u8 data[0];\n"
+ "+};\n"
+ "+\n"
+ " #endif /* _ASM_X86_KVM_H */\n"
+ "diff --git a/tools/include/uapi/linux/kvm.h b/tools/include/uapi/linux/kvm.h\n"
+ "index b6270a3b38e9..07548de5c988 100644\n"
+ "--- a/tools/include/uapi/linux/kvm.h\n"
+ "+++ b/tools/include/uapi/linux/kvm.h\n"
+ "@@ -949,6 +949,9 @@ struct kvm_ppc_resize_hpt {\n"
+ " #define KVM_CAP_GET_MSR_FEATURES 153\n"
+ " #define KVM_CAP_HYPERV_EVENTFD 154\n"
+ " #define KVM_CAP_HYPERV_TLBFLUSH 155\n"
+ "+#define KVM_CAP_S390_HPAGE_1M 156\n"
+ "+#define KVM_CAP_NESTED_STATE 157\n"
+ "+#define KVM_CAP_ARM_INJECT_SERROR_ESR 158\n"
+ " \n"
+ " #ifdef KVM_CAP_IRQ_ROUTING\n"
+ " \n"
+ "@@ -1391,6 +1394,9 @@ struct kvm_enc_region {\n"
+ " /* Available with KVM_CAP_HYPERV_EVENTFD */\n"
+ " #define KVM_HYPERV_EVENTFD        _IOW(KVMIO,  0xbd, struct kvm_hyperv_eventfd)\n"
+ " \n"
+ "+/* Available with KVM_CAP_NESTED_STATE */\n"
+ "+#define KVM_GET_NESTED_STATE         _IOWR(KVMIO, 0xbe, struct kvm_nested_state)\n"
+ "+#define KVM_SET_NESTED_STATE         _IOW(KVMIO,  0xbf, struct kvm_nested_state)\n"
+ " \n"
+ " /* Secure Encrypted Virtualization command */\n"
+  enum sev_cmd_id {
 
-50b4b5dba9c12bb2f9febf5e851f1fa25fb6fe9b0f43df4b407e4a10253ab6df
+fee905689adf6bc9cfb3a24fc566501c30872450b624170cbf2864f6386e767a

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.