tools headers UAPI: Sync linux/kvm.h with the kernel sources
To pick the changes in:bfbab44568
("KVM: arm64: Implement PSCI SYSTEM_SUSPEND")7b33a09d03
("KVM: arm64: Add support for userspace to suspend a vCPU")ffbb61d09f
("KVM: x86: Accept KVM_[GS]ET_TSC_KHZ as a VM ioctl.")661a20fab7
("KVM: x86/xen: Advertise and document KVM_XEN_HVM_CONFIG_EVTCHN_SEND")fde0451be8
("KVM: x86/xen: Support per-vCPU event channel upcall via local APIC")28d1629f75
("KVM: x86/xen: Kernel acceleration for XENVER_version")5363952605
("KVM: x86/xen: handle PV timers oneshot mode")942c2490c2
("KVM: x86/xen: Add KVM_XEN_VCPU_ATTR_TYPE_VCPU_ID")2fd6df2f2b
("KVM: x86/xen: intercept EVTCHNOP_send from guests")35025735a7
("KVM: x86/xen: Support direct injection of event channel events") That automatically adds support for this new ioctl: $ tools/perf/trace/beauty/kvm_ioctl.sh > before $ cp include/uapi/linux/kvm.h tools/include/uapi/linux/kvm.h $ tools/perf/trace/beauty/kvm_ioctl.sh > after $ diff -u before after --- before 2022-06-28 12:13:07.281150509 -0300 +++ after 2022-06-28 12:13:16.423392896 -0300 @@ -98,6 +98,7 @@ [0xcc] = "GET_SREGS2", [0xcd] = "SET_SREGS2", [0xce] = "GET_STATS_FD", + [0xd0] = "XEN_HVM_EVTCHN_SEND", [0xe0] = "CREATE_DEVICE", [0xe1] = "SET_DEVICE_ATTR", [0xe2] = "GET_DEVICE_ATTR", $ This silences these perf build warning: 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: Adrian Hunter <adrian.hunter@intel.com> Cc: David Woodhouse <dwmw@amazon.co.uk> Cc: Ian Rogers <irogers@google.com> Cc: Jiri Olsa <jolsa@kernel.org> Cc: Joao Martins <joao.m.martins@oracle.com> Cc: Marc Zyngier <maz@kernel.org> Cc: Namhyung Kim <namhyung@kernel.org> Cc: Oliver Upton <oupton@google.com> Cc: Paolo Bonzini <pbonzini@redhat.com> Link: http://lore.kernel.org/lkml/Yrs4RE+qfgTaWdAt@kernel.org Signed-off-by: Arnaldo Carvalho de Melo <acme@redhat.com>
This commit is contained in:
parent
579d6c6d77
commit
7fe718fb8f
|
@ -444,6 +444,9 @@ struct kvm_run {
|
||||||
#define KVM_SYSTEM_EVENT_SHUTDOWN 1
|
#define KVM_SYSTEM_EVENT_SHUTDOWN 1
|
||||||
#define KVM_SYSTEM_EVENT_RESET 2
|
#define KVM_SYSTEM_EVENT_RESET 2
|
||||||
#define KVM_SYSTEM_EVENT_CRASH 3
|
#define KVM_SYSTEM_EVENT_CRASH 3
|
||||||
|
#define KVM_SYSTEM_EVENT_WAKEUP 4
|
||||||
|
#define KVM_SYSTEM_EVENT_SUSPEND 5
|
||||||
|
#define KVM_SYSTEM_EVENT_SEV_TERM 6
|
||||||
__u32 type;
|
__u32 type;
|
||||||
__u32 ndata;
|
__u32 ndata;
|
||||||
union {
|
union {
|
||||||
|
@ -646,6 +649,7 @@ struct kvm_vapic_addr {
|
||||||
#define KVM_MP_STATE_OPERATING 7
|
#define KVM_MP_STATE_OPERATING 7
|
||||||
#define KVM_MP_STATE_LOAD 8
|
#define KVM_MP_STATE_LOAD 8
|
||||||
#define KVM_MP_STATE_AP_RESET_HOLD 9
|
#define KVM_MP_STATE_AP_RESET_HOLD 9
|
||||||
|
#define KVM_MP_STATE_SUSPENDED 10
|
||||||
|
|
||||||
struct kvm_mp_state {
|
struct kvm_mp_state {
|
||||||
__u32 mp_state;
|
__u32 mp_state;
|
||||||
|
@ -1150,8 +1154,9 @@ struct kvm_ppc_resize_hpt {
|
||||||
#define KVM_CAP_S390_MEM_OP_EXTENSION 211
|
#define KVM_CAP_S390_MEM_OP_EXTENSION 211
|
||||||
#define KVM_CAP_PMU_CAPABILITY 212
|
#define KVM_CAP_PMU_CAPABILITY 212
|
||||||
#define KVM_CAP_DISABLE_QUIRKS2 213
|
#define KVM_CAP_DISABLE_QUIRKS2 213
|
||||||
/* #define KVM_CAP_VM_TSC_CONTROL 214 */
|
#define KVM_CAP_VM_TSC_CONTROL 214
|
||||||
#define KVM_CAP_SYSTEM_EVENT_DATA 215
|
#define KVM_CAP_SYSTEM_EVENT_DATA 215
|
||||||
|
#define KVM_CAP_ARM_SYSTEM_SUSPEND 216
|
||||||
|
|
||||||
#ifdef KVM_CAP_IRQ_ROUTING
|
#ifdef KVM_CAP_IRQ_ROUTING
|
||||||
|
|
||||||
|
@ -1240,6 +1245,7 @@ struct kvm_x86_mce {
|
||||||
#define KVM_XEN_HVM_CONFIG_SHARED_INFO (1 << 2)
|
#define KVM_XEN_HVM_CONFIG_SHARED_INFO (1 << 2)
|
||||||
#define KVM_XEN_HVM_CONFIG_RUNSTATE (1 << 3)
|
#define KVM_XEN_HVM_CONFIG_RUNSTATE (1 << 3)
|
||||||
#define KVM_XEN_HVM_CONFIG_EVTCHN_2LEVEL (1 << 4)
|
#define KVM_XEN_HVM_CONFIG_EVTCHN_2LEVEL (1 << 4)
|
||||||
|
#define KVM_XEN_HVM_CONFIG_EVTCHN_SEND (1 << 5)
|
||||||
|
|
||||||
struct kvm_xen_hvm_config {
|
struct kvm_xen_hvm_config {
|
||||||
__u32 flags;
|
__u32 flags;
|
||||||
|
@ -1478,7 +1484,8 @@ struct kvm_s390_ucas_mapping {
|
||||||
#define KVM_SET_PIT2 _IOW(KVMIO, 0xa0, struct kvm_pit_state2)
|
#define KVM_SET_PIT2 _IOW(KVMIO, 0xa0, struct kvm_pit_state2)
|
||||||
/* Available with KVM_CAP_PPC_GET_PVINFO */
|
/* Available with KVM_CAP_PPC_GET_PVINFO */
|
||||||
#define KVM_PPC_GET_PVINFO _IOW(KVMIO, 0xa1, struct kvm_ppc_pvinfo)
|
#define KVM_PPC_GET_PVINFO _IOW(KVMIO, 0xa1, struct kvm_ppc_pvinfo)
|
||||||
/* Available with KVM_CAP_TSC_CONTROL */
|
/* Available with KVM_CAP_TSC_CONTROL for a vCPU, or with
|
||||||
|
* KVM_CAP_VM_TSC_CONTROL to set defaults for a VM */
|
||||||
#define KVM_SET_TSC_KHZ _IO(KVMIO, 0xa2)
|
#define KVM_SET_TSC_KHZ _IO(KVMIO, 0xa2)
|
||||||
#define KVM_GET_TSC_KHZ _IO(KVMIO, 0xa3)
|
#define KVM_GET_TSC_KHZ _IO(KVMIO, 0xa3)
|
||||||
/* Available with KVM_CAP_PCI_2_3 */
|
/* Available with KVM_CAP_PCI_2_3 */
|
||||||
|
@ -1694,6 +1701,32 @@ struct kvm_xen_hvm_attr {
|
||||||
struct {
|
struct {
|
||||||
__u64 gfn;
|
__u64 gfn;
|
||||||
} shared_info;
|
} shared_info;
|
||||||
|
struct {
|
||||||
|
__u32 send_port;
|
||||||
|
__u32 type; /* EVTCHNSTAT_ipi / EVTCHNSTAT_interdomain */
|
||||||
|
__u32 flags;
|
||||||
|
#define KVM_XEN_EVTCHN_DEASSIGN (1 << 0)
|
||||||
|
#define KVM_XEN_EVTCHN_UPDATE (1 << 1)
|
||||||
|
#define KVM_XEN_EVTCHN_RESET (1 << 2)
|
||||||
|
/*
|
||||||
|
* Events sent by the guest are either looped back to
|
||||||
|
* the guest itself (potentially on a different port#)
|
||||||
|
* or signalled via an eventfd.
|
||||||
|
*/
|
||||||
|
union {
|
||||||
|
struct {
|
||||||
|
__u32 port;
|
||||||
|
__u32 vcpu;
|
||||||
|
__u32 priority;
|
||||||
|
} port;
|
||||||
|
struct {
|
||||||
|
__u32 port; /* Zero for eventfd */
|
||||||
|
__s32 fd;
|
||||||
|
} eventfd;
|
||||||
|
__u32 padding[4];
|
||||||
|
} deliver;
|
||||||
|
} evtchn;
|
||||||
|
__u32 xen_version;
|
||||||
__u64 pad[8];
|
__u64 pad[8];
|
||||||
} u;
|
} u;
|
||||||
};
|
};
|
||||||
|
@ -1702,11 +1735,17 @@ struct kvm_xen_hvm_attr {
|
||||||
#define KVM_XEN_ATTR_TYPE_LONG_MODE 0x0
|
#define KVM_XEN_ATTR_TYPE_LONG_MODE 0x0
|
||||||
#define KVM_XEN_ATTR_TYPE_SHARED_INFO 0x1
|
#define KVM_XEN_ATTR_TYPE_SHARED_INFO 0x1
|
||||||
#define KVM_XEN_ATTR_TYPE_UPCALL_VECTOR 0x2
|
#define KVM_XEN_ATTR_TYPE_UPCALL_VECTOR 0x2
|
||||||
|
/* Available with KVM_CAP_XEN_HVM / KVM_XEN_HVM_CONFIG_EVTCHN_SEND */
|
||||||
|
#define KVM_XEN_ATTR_TYPE_EVTCHN 0x3
|
||||||
|
#define KVM_XEN_ATTR_TYPE_XEN_VERSION 0x4
|
||||||
|
|
||||||
/* Per-vCPU Xen attributes */
|
/* Per-vCPU Xen attributes */
|
||||||
#define KVM_XEN_VCPU_GET_ATTR _IOWR(KVMIO, 0xca, struct kvm_xen_vcpu_attr)
|
#define KVM_XEN_VCPU_GET_ATTR _IOWR(KVMIO, 0xca, struct kvm_xen_vcpu_attr)
|
||||||
#define KVM_XEN_VCPU_SET_ATTR _IOW(KVMIO, 0xcb, struct kvm_xen_vcpu_attr)
|
#define KVM_XEN_VCPU_SET_ATTR _IOW(KVMIO, 0xcb, struct kvm_xen_vcpu_attr)
|
||||||
|
|
||||||
|
/* Available with KVM_CAP_XEN_HVM / KVM_XEN_HVM_CONFIG_EVTCHN_SEND */
|
||||||
|
#define KVM_XEN_HVM_EVTCHN_SEND _IOW(KVMIO, 0xd0, struct kvm_irq_routing_xen_evtchn)
|
||||||
|
|
||||||
#define KVM_GET_SREGS2 _IOR(KVMIO, 0xcc, struct kvm_sregs2)
|
#define KVM_GET_SREGS2 _IOR(KVMIO, 0xcc, struct kvm_sregs2)
|
||||||
#define KVM_SET_SREGS2 _IOW(KVMIO, 0xcd, struct kvm_sregs2)
|
#define KVM_SET_SREGS2 _IOW(KVMIO, 0xcd, struct kvm_sregs2)
|
||||||
|
|
||||||
|
@ -1724,6 +1763,13 @@ struct kvm_xen_vcpu_attr {
|
||||||
__u64 time_blocked;
|
__u64 time_blocked;
|
||||||
__u64 time_offline;
|
__u64 time_offline;
|
||||||
} runstate;
|
} runstate;
|
||||||
|
__u32 vcpu_id;
|
||||||
|
struct {
|
||||||
|
__u32 port;
|
||||||
|
__u32 priority;
|
||||||
|
__u64 expires_ns;
|
||||||
|
} timer;
|
||||||
|
__u8 vector;
|
||||||
} u;
|
} u;
|
||||||
};
|
};
|
||||||
|
|
||||||
|
@ -1734,6 +1780,10 @@ struct kvm_xen_vcpu_attr {
|
||||||
#define KVM_XEN_VCPU_ATTR_TYPE_RUNSTATE_CURRENT 0x3
|
#define KVM_XEN_VCPU_ATTR_TYPE_RUNSTATE_CURRENT 0x3
|
||||||
#define KVM_XEN_VCPU_ATTR_TYPE_RUNSTATE_DATA 0x4
|
#define KVM_XEN_VCPU_ATTR_TYPE_RUNSTATE_DATA 0x4
|
||||||
#define KVM_XEN_VCPU_ATTR_TYPE_RUNSTATE_ADJUST 0x5
|
#define KVM_XEN_VCPU_ATTR_TYPE_RUNSTATE_ADJUST 0x5
|
||||||
|
/* Available with KVM_CAP_XEN_HVM / KVM_XEN_HVM_CONFIG_EVTCHN_SEND */
|
||||||
|
#define KVM_XEN_VCPU_ATTR_TYPE_VCPU_ID 0x6
|
||||||
|
#define KVM_XEN_VCPU_ATTR_TYPE_TIMER 0x7
|
||||||
|
#define KVM_XEN_VCPU_ATTR_TYPE_UPCALL_VECTOR 0x8
|
||||||
|
|
||||||
/* Secure Encrypted Virtualization command */
|
/* Secure Encrypted Virtualization command */
|
||||||
enum sev_cmd_id {
|
enum sev_cmd_id {
|
||||||
|
|
Loading…
Reference in New Issue