History

tools headers kvm: Sync linux/kvm.h with the kernel sources

To pick up the changes from: 9a5788c615f5 ("KVM: PPC: Book3S HV: Add a capability for enabling secure guests") 3c9bd4006bfc ("KVM: x86: enable dirty log gradually in small chunks") 13da9ae1cdbf ("KVM: s390: protvirt: introduce and enable KVM_CAP_S390_PROTECTED") e0d2773d487c ("KVM: s390: protvirt: UV calls in support of diag308 0, 1") 19e122776886 ("KVM: S390: protvirt: Introduce instruction data area bounce buffer") 29b40f105ec8 ("KVM: s390: protvirt: Add initial vm and cpu lifecycle handling") So far we're ignoring those arch specific ioctls, we need to revisit this at some time to have arch specific tables, etc: $ grep S390 tools/perf/trace/beauty/kvm_ioctl.sh egrep -v " ((ARM|PPC|S390)_|[GS]ET_(DEBUGREGS|PIT2|XSAVE|TSC_KHZ)|CREATE_SPAPR_TCE_64)" | \ $ This addresses these tools/perf build warnings: Warning: Kernel ABI header at 'tools/arch/arm/include/uapi/asm/kvm.h' differs from latest version at 'arch/arm/include/uapi/asm/kvm.h' diff -u tools/arch/arm/include/uapi/asm/kvm.h arch/arm/include/uapi/asm/kvm.h

Arnaldo Carvalho de Melo committed 6 years ago

Commit b8fc2281 parent 1abcb9d1 file · +45 −2Browse files

Showing the changes to tools/include/uapi/linux (1 of 1 file). Show all

Unified · Split

tools/include/uapi/linux/kvm.h+45−2
@@ -474,12 +474,17 @@ struct kvm_s390_mem_op { · 473 unmodified lines
474 __u32 size; /* amount of bytes */474 __u32 size; /* amount of bytes */
475 __u32 op; /* type of operation */475 __u32 op; /* type of operation */
476 __u64 buf; /* buffer in userspace */476 __u64 buf; /* buffer in userspace */
477 __u8 ar; /* the access register number */477 union {
478 __u8 reserved[31]; /* should be set to 0 */478 __u8 ar; /* the access register number */
479 __u32 sida_offset; /* offset into the sida */
480 __u8 reserved[32]; /* should be set to 0 */
481 };
479};482};
480/* types for kvm_s390_mem_op->op */483/* types for kvm_s390_mem_op->op */
481#define KVM_S390_MEMOP_LOGICAL_READ 0484#define KVM_S390_MEMOP_LOGICAL_READ 0
482#define KVM_S390_MEMOP_LOGICAL_WRITE 1485#define KVM_S390_MEMOP_LOGICAL_WRITE 1
486#define KVM_S390_MEMOP_SIDA_READ 2
487#define KVM_S390_MEMOP_SIDA_WRITE 3
483/* flags for kvm_s390_mem_op->flags */488/* flags for kvm_s390_mem_op->flags */
484#define KVM_S390_MEMOP_F_CHECK_ONLY (1ULL << 0)489#define KVM_S390_MEMOP_F_CHECK_ONLY (1ULL << 0)
485#define KVM_S390_MEMOP_F_INJECT_EXCEPTION (1ULL << 1)490#define KVM_S390_MEMOP_F_INJECT_EXCEPTION (1ULL << 1)
@@ -1010,6 +1015,8 @@ struct kvm_ppc_resize_hpt { · 524 unmodified lines
1010#define KVM_CAP_ARM_NISV_TO_USER 1771015#define KVM_CAP_ARM_NISV_TO_USER 177
1011#define KVM_CAP_ARM_INJECT_EXT_DABT 1781016#define KVM_CAP_ARM_INJECT_EXT_DABT 178
1012#define KVM_CAP_S390_VCPU_RESETS 1791017#define KVM_CAP_S390_VCPU_RESETS 179
1018#define KVM_CAP_S390_PROTECTED 180
1019#define KVM_CAP_PPC_SECURE_GUEST 181
1013 1020
1014#ifdef KVM_CAP_IRQ_ROUTING1021#ifdef KVM_CAP_IRQ_ROUTING
1015 1022
@@ -1478,6 +1485,39 @@ struct kvm_enc_region { · 462 unmodified lines
1478#define KVM_S390_NORMAL_RESET _IO(KVMIO, 0xc3)1485#define KVM_S390_NORMAL_RESET _IO(KVMIO, 0xc3)
1479#define KVM_S390_CLEAR_RESET _IO(KVMIO, 0xc4)1486#define KVM_S390_CLEAR_RESET _IO(KVMIO, 0xc4)
1480 1487
1488struct kvm_s390_pv_sec_parm {
1489 __u64 origin;
1490 __u64 length;
1491};
1492
1493struct kvm_s390_pv_unp {
1494 __u64 addr;
1495 __u64 size;
1496 __u64 tweak;
1497};
1498
1499enum pv_cmd_id {
1500 KVM_PV_ENABLE,
1501 KVM_PV_DISABLE,
1502 KVM_PV_SET_SEC_PARMS,
1503 KVM_PV_UNPACK,
1504 KVM_PV_VERIFY,
1505 KVM_PV_PREP_RESET,
1506 KVM_PV_UNSHARE_ALL,
1507};
1508
1509struct kvm_pv_cmd {
1510 __u32 cmd; /* Command to be executed */
1511 __u16 rc; /* Ultravisor return code */
1512 __u16 rrc; /* Ultravisor return reason code */
1513 __u64 data; /* Data or address */
1514 __u32 flags; /* flags for future extensions. Must be 0 for now */
1515 __u32 reserved[3];
1516};
1517
1518/* Available with KVM_CAP_S390_PROTECTED */
1519#define KVM_S390_PV_COMMAND _IOWR(KVMIO, 0xc5, struct kvm_pv_cmd)
1520
1481/* Secure Encrypted Virtualization command */1521/* Secure Encrypted Virtualization command */
1482enum sev_cmd_id {1522enum sev_cmd_id {
1483 /* Guest initialization commands */1523 /* Guest initialization commands */
@@ -1628,4 +1668,7 @@ struct kvm_hyperv_eventfd { · 144 unmodified lines
1628#define KVM_HYPERV_CONN_ID_MASK 0x00ffffff1668#define KVM_HYPERV_CONN_ID_MASK 0x00ffffff
1629#define KVM_HYPERV_EVENTFD_DEASSIGN (1 << 0)1669#define KVM_HYPERV_EVENTFD_DEASSIGN (1 << 0)
1630 1670
1671#define KVM_DIRTY_LOG_MANUAL_PROTECT_ENABLE (1 << 0)
1672#define KVM_DIRTY_LOG_INITIALLY_SET (1 << 1)
1673
1631#endif /* __LINUX_KVM_H */1674#endif /* __LINUX_KVM_H */