Il 30/09/2014 10:57, Jens Freimann ha scritto: > Sync headers with 3.17-rc7 > > Signed-off-by: Jens Freimann <[email protected]> > ---
Acked-by: Paolo Bonzini <[email protected]> > linux-headers/asm-mips/kvm_para.h | 6 +++++- > linux-headers/asm-powerpc/kvm.h | 2 ++ > linux-headers/asm-x86/kvm.h | 3 +++ > linux-headers/linux/kvm.h | 13 ++++++++++--- > linux-headers/linux/kvm_para.h | 3 +++ > linux-headers/linux/vfio.h | 34 ++++++++++++++++++++++++++++++++++ > linux-headers/linux/vhost.h | 2 +- > 7 files changed, 58 insertions(+), 5 deletions(-) > > diff --git a/linux-headers/asm-mips/kvm_para.h > b/linux-headers/asm-mips/kvm_para.h > index 14fab8f..dbb2464 100644 > --- a/linux-headers/asm-mips/kvm_para.h > +++ b/linux-headers/asm-mips/kvm_para.h > @@ -1 +1,5 @@ > -#include <asm-generic/kvm_para.h> > +#ifndef _ASM_MIPS_KVM_PARA_H > +#define _ASM_MIPS_KVM_PARA_H > + > + > +#endif /* _ASM_MIPS_KVM_PARA_H */ > diff --git a/linux-headers/asm-powerpc/kvm.h b/linux-headers/asm-powerpc/kvm.h > index 2bc4a94..e0e49db 100644 > --- a/linux-headers/asm-powerpc/kvm.h > +++ b/linux-headers/asm-powerpc/kvm.h > @@ -548,6 +548,7 @@ struct kvm_get_htab_header { > > #define KVM_REG_PPC_VRSAVE (KVM_REG_PPC | KVM_REG_SIZE_U32 | 0xb4) > #define KVM_REG_PPC_LPCR (KVM_REG_PPC | KVM_REG_SIZE_U32 | 0xb5) > +#define KVM_REG_PPC_LPCR_64 (KVM_REG_PPC | KVM_REG_SIZE_U64 | 0xb5) > #define KVM_REG_PPC_PPR (KVM_REG_PPC | KVM_REG_SIZE_U64 | 0xb6) > > /* Architecture compatibility level */ > @@ -555,6 +556,7 @@ struct kvm_get_htab_header { > > #define KVM_REG_PPC_DABRX (KVM_REG_PPC | KVM_REG_SIZE_U32 | 0xb8) > #define KVM_REG_PPC_WORT (KVM_REG_PPC | KVM_REG_SIZE_U64 | 0xb9) > +#define KVM_REG_PPC_SPRG9 (KVM_REG_PPC | KVM_REG_SIZE_U64 | 0xba) > > /* Transactional Memory checkpointed state: > * This is all GPRs, all VSX regs and a subset of SPRs > diff --git a/linux-headers/asm-x86/kvm.h b/linux-headers/asm-x86/kvm.h > index d3a8778..d7dcef5 100644 > --- a/linux-headers/asm-x86/kvm.h > +++ b/linux-headers/asm-x86/kvm.h > @@ -23,7 +23,10 @@ > #define GP_VECTOR 13 > #define PF_VECTOR 14 > #define MF_VECTOR 16 > +#define AC_VECTOR 17 > #define MC_VECTOR 18 > +#define XM_VECTOR 19 > +#define VE_VECTOR 20 > > /* Select x86 specific features in <linux/kvm.h> */ > #define __KVM_HAVE_PIT > diff --git a/linux-headers/linux/kvm.h b/linux-headers/linux/kvm.h > index f5d2c38..2669938 100644 > --- a/linux-headers/linux/kvm.h > +++ b/linux-headers/linux/kvm.h > @@ -162,7 +162,7 @@ struct kvm_pit_config { > #define KVM_EXIT_TPR_ACCESS 12 > #define KVM_EXIT_S390_SIEIC 13 > #define KVM_EXIT_S390_RESET 14 > -#define KVM_EXIT_DCR 15 > +#define KVM_EXIT_DCR 15 /* deprecated */ > #define KVM_EXIT_NMI 16 > #define KVM_EXIT_INTERNAL_ERROR 17 > #define KVM_EXIT_OSI 18 > @@ -268,7 +268,7 @@ struct kvm_run { > __u64 trans_exc_code; > __u32 pgm_code; > } s390_ucontrol; > - /* KVM_EXIT_DCR */ > + /* KVM_EXIT_DCR (deprecated) */ > struct { > __u32 dcrn; > __u32 data; > @@ -399,13 +399,18 @@ struct kvm_vapic_addr { > __u64 vapic_addr; > }; > > -/* for KVM_SET_MPSTATE */ > +/* for KVM_SET_MP_STATE */ > > +/* not all states are valid on all architectures */ > #define KVM_MP_STATE_RUNNABLE 0 > #define KVM_MP_STATE_UNINITIALIZED 1 > #define KVM_MP_STATE_INIT_RECEIVED 2 > #define KVM_MP_STATE_HALTED 3 > #define KVM_MP_STATE_SIPI_RECEIVED 4 > +#define KVM_MP_STATE_STOPPED 5 > +#define KVM_MP_STATE_CHECK_STOP 6 > +#define KVM_MP_STATE_OPERATING 7 > +#define KVM_MP_STATE_LOAD 8 > > struct kvm_mp_state { > __u32 mp_state; > @@ -758,6 +763,8 @@ struct kvm_ppc_smmu_info { > #define KVM_CAP_VM_ATTRIBUTES 101 > #define KVM_CAP_ARM_PSCI_0_2 102 > #define KVM_CAP_PPC_FIXUP_HCALL 103 > +#define KVM_CAP_PPC_ENABLE_HCALL 104 > +#define KVM_CAP_CHECK_EXTENSION_VM 105 > > #ifdef KVM_CAP_IRQ_ROUTING > > diff --git a/linux-headers/linux/kvm_para.h b/linux-headers/linux/kvm_para.h > index 2dff783..e61661e 100644 > --- a/linux-headers/linux/kvm_para.h > +++ b/linux-headers/linux/kvm_para.h > @@ -20,6 +20,9 @@ > #define KVM_HC_FEATURES 3 > #define KVM_HC_PPC_MAP_MAGIC_PAGE 4 > #define KVM_HC_KICK_CPU 5 > +#define KVM_HC_MIPS_GET_CLOCK_FREQ 6 > +#define KVM_HC_MIPS_EXIT_VM 7 > +#define KVM_HC_MIPS_CONSOLE_OUTPUT 8 > > /* > * hypercalls use architecture specific > diff --git a/linux-headers/linux/vfio.h b/linux-headers/linux/vfio.h > index 26c218e..95b591b 100644 > --- a/linux-headers/linux/vfio.h > +++ b/linux-headers/linux/vfio.h > @@ -30,6 +30,9 @@ > */ > #define VFIO_DMA_CC_IOMMU 4 > > +/* Check if EEH is supported */ > +#define VFIO_EEH 5 > + > /* > * The IOCTL interface is designed for extensibility by embedding the > * structure length (argsz) and flags into structures passed between > @@ -455,6 +458,37 @@ struct vfio_iommu_spapr_tce_info { > > #define VFIO_IOMMU_SPAPR_TCE_GET_INFO _IO(VFIO_TYPE, VFIO_BASE + 12) > > +/* > + * EEH PE operation struct provides ways to: > + * - enable/disable EEH functionality; > + * - unfreeze IO/DMA for frozen PE; > + * - read PE state; > + * - reset PE; > + * - configure PE. > + */ > +struct vfio_eeh_pe_op { > + __u32 argsz; > + __u32 flags; > + __u32 op; > +}; > + > +#define VFIO_EEH_PE_DISABLE 0 /* Disable EEH functionality */ > +#define VFIO_EEH_PE_ENABLE 1 /* Enable EEH functionality */ > +#define VFIO_EEH_PE_UNFREEZE_IO 2 /* Enable IO for frozen > PE */ > +#define VFIO_EEH_PE_UNFREEZE_DMA 3 /* Enable DMA for frozen PE */ > +#define VFIO_EEH_PE_GET_STATE 4 /* PE state retrieval > */ > +#define VFIO_EEH_PE_STATE_NORMAL 0 /* PE in functional state */ > +#define VFIO_EEH_PE_STATE_RESET 1 /* PE reset in progress */ > +#define VFIO_EEH_PE_STATE_STOPPED 2 /* Stopped DMA and IO */ > +#define VFIO_EEH_PE_STATE_STOPPED_DMA 4 /* Stopped DMA only > */ > +#define VFIO_EEH_PE_STATE_UNAVAIL 5 /* State unavailable */ > +#define VFIO_EEH_PE_RESET_DEACTIVATE 5 /* Deassert PE reset */ > +#define VFIO_EEH_PE_RESET_HOT 6 /* Assert hot reset > */ > +#define VFIO_EEH_PE_RESET_FUNDAMENTAL 7 /* Assert fundamental > reset */ > +#define VFIO_EEH_PE_CONFIGURE 8 /* PE configuration > */ > + > +#define VFIO_EEH_PE_OP _IO(VFIO_TYPE, VFIO_BASE + 21) > + > /* ***************************************************************** */ > > #endif /* VFIO_H */ > diff --git a/linux-headers/linux/vhost.h b/linux-headers/linux/vhost.h > index bb5df43..c656f61 100644 > --- a/linux-headers/linux/vhost.h > +++ b/linux-headers/linux/vhost.h > @@ -14,7 +14,7 @@ > > #include <linux/ioctl.h> > #include <linux/virtio_config.h> > -#include "hw/virtio/virtio_ring.h" > +#include <linux/virtio_ring.h> > > struct vhost_vring_state { > unsigned int index; >
