KVM/arm64 updates for v5.14.
- Add MTE support in guests, complete with tag save/restore interface - Reduce the impact of CMOs by moving them in the page-table code - Allow device block mappings at stage-2 - Reduce the footprint of the vmemmap in protected mode - Support the vGIC on dumb systems such as the Apple M1 - Add selftest infrastructure to support multiple configuration and apply that to PMU/non-PMU setups - Add selftests for the debug architecture - The usual crop of PMU fixes -----BEGIN PGP SIGNATURE----- iQJDBAABCgAtFiEEn9UcU+C1Yxj9lZw9I9DQutE9ekMFAmDV2bEPHG1hekBrZXJu ZWwub3JnAAoJECPQ0LrRPXpDEr8P/ivwROx5NwGcHGmU5RfUCT3aFqhtVHHwD/lu jPcgoO61kz9TelOu6QRaVuK+mVHxcq3iP4R8nPq/QCkUlEXTmK2xkyhXhGXSYpH4 6jM8+BbC3eG7iAxx6H0UM4JTl4Riwat6ZZtXpWEWs9TKqOHOQYFpMkxSttwVZ1CZ SjbtFvXLEdzKn6PzUWnKdBNMV/mHsdAtohZit9oJOc4ttc8072XxETQ4TFQ+MSvA j9zY9QPmWzgcZnotqRRu9sbTGO2vxtXuUtY3sjdD8+C9OgSe9qvpnNjymcmfwaMu 1fBkfh65oaO4ItJBdGOUOoEcFqwN5imPiI7CB/O+ZYkO9sBCuTUPSQwPkyiwXb9r bUkTaQw2nZiNWsqR1x07fQ2sGYbMp5mnmgmqiV4MUWkLmFp9LZATCWYTTn24cBNS 6SjVP6/8S0r3EhLnYjH0Pn1we5PooU1EF6RlCAd3ewYoo+9fPnwjNYwIWH5i5wB7 +tnei44NACAw9cfbos+BYQQ/dY15OSFzLzIMomlabB7OpXOdDg3H6tJnPbFwWwXb 9nF8XdHqxeDVVVrDCAx1BSodSXm9xqgnQM2RDGTUnpVcAfqAr3MXX6VsyKQDzj8T QXF9qOVCBAABv6BXAvSQ6mvMJZDUVbUPEPhf7kXzF46JsRd6A7wWoU/OnMGHQ/w7 wjvH8HVy =fWBV -----END PGP SIGNATURE----- Merge tag 'kvmarm-5.14' of git://git.kernel.org/pub/scm/linux/kernel/git/kvmarm/kvmarm into HEAD KVM/arm64 updates for v5.14. - Add MTE support in guests, complete with tag save/restore interface - Reduce the impact of CMOs by moving them in the page-table code - Allow device block mappings at stage-2 - Reduce the footprint of the vmemmap in protected mode - Support the vGIC on dumb systems such as the Apple M1 - Add selftest infrastructure to support multiple configuration and apply that to PMU/non-PMU setups - Add selftests for the debug architecture - The usual crop of PMU fixes
This commit is contained in:
commit
b8917b4ae4
816 changed files with 9392 additions and 4425 deletions
|
|
@ -63,9 +63,6 @@ union __sifields {
|
|||
/* SIGILL, SIGFPE, SIGSEGV, SIGBUS, SIGTRAP, SIGEMT */
|
||||
struct {
|
||||
void __user *_addr; /* faulting insn/memory ref. */
|
||||
#ifdef __ARCH_SI_TRAPNO
|
||||
int _trapno; /* TRAP # which caused the signal */
|
||||
#endif
|
||||
#ifdef __ia64__
|
||||
int _imm; /* immediate value for "break" */
|
||||
unsigned int _flags; /* see ia64 si_flags */
|
||||
|
|
@ -75,6 +72,8 @@ union __sifields {
|
|||
#define __ADDR_BND_PKEY_PAD (__alignof__(void *) < sizeof(short) ? \
|
||||
sizeof(short) : __alignof__(void *))
|
||||
union {
|
||||
/* used on alpha and sparc */
|
||||
int _trapno; /* TRAP # which caused the signal */
|
||||
/*
|
||||
* used when si_code=BUS_MCEERR_AR or
|
||||
* used when si_code=BUS_MCEERR_AO
|
||||
|
|
@ -92,7 +91,10 @@ union __sifields {
|
|||
__u32 _pkey;
|
||||
} _addr_pkey;
|
||||
/* used when si_code=TRAP_PERF */
|
||||
unsigned long _perf;
|
||||
struct {
|
||||
unsigned long _data;
|
||||
__u32 _type;
|
||||
} _perf;
|
||||
};
|
||||
} _sigfault;
|
||||
|
||||
|
|
@ -150,14 +152,13 @@ typedef struct siginfo {
|
|||
#define si_int _sifields._rt._sigval.sival_int
|
||||
#define si_ptr _sifields._rt._sigval.sival_ptr
|
||||
#define si_addr _sifields._sigfault._addr
|
||||
#ifdef __ARCH_SI_TRAPNO
|
||||
#define si_trapno _sifields._sigfault._trapno
|
||||
#endif
|
||||
#define si_addr_lsb _sifields._sigfault._addr_lsb
|
||||
#define si_lower _sifields._sigfault._addr_bnd._lower
|
||||
#define si_upper _sifields._sigfault._addr_bnd._upper
|
||||
#define si_pkey _sifields._sigfault._addr_pkey._pkey
|
||||
#define si_perf _sifields._sigfault._perf
|
||||
#define si_perf_data _sifields._sigfault._perf._data
|
||||
#define si_perf_type _sifields._sigfault._perf._type
|
||||
#define si_band _sifields._sigpoll._band
|
||||
#define si_fd _sifields._sigpoll._fd
|
||||
#define si_call_addr _sifields._sigsys._call_addr
|
||||
|
|
|
|||
|
|
@ -1111,6 +1111,7 @@ struct kvm_ppc_resize_hpt {
|
|||
#define KVM_CAP_PPC_RPT_INVALIDATE 202
|
||||
#define KVM_CAP_BINARY_STATS_FD 203
|
||||
#define KVM_CAP_EXIT_ON_EMULATION_FAILURE 204
|
||||
#define KVM_CAP_ARM_MTE 205
|
||||
|
||||
#ifdef KVM_CAP_IRQ_ROUTING
|
||||
|
||||
|
|
@ -1456,6 +1457,7 @@ struct kvm_s390_ucas_mapping {
|
|||
/* Available with KVM_CAP_PMU_EVENT_FILTER */
|
||||
#define KVM_SET_PMU_EVENT_FILTER _IOW(KVMIO, 0xb2, struct kvm_pmu_event_filter)
|
||||
#define KVM_PPC_SVM_OFF _IO(KVMIO, 0xb3)
|
||||
#define KVM_ARM_MTE_COPY_TAGS _IOR(KVMIO, 0xb4, struct kvm_arm_copy_mte_tags)
|
||||
|
||||
/* ioctl for vm fd */
|
||||
#define KVM_CREATE_DEVICE _IOWR(KVMIO, 0xe0, struct kvm_create_device)
|
||||
|
|
|
|||
|
|
@ -464,7 +464,7 @@ struct perf_event_attr {
|
|||
|
||||
/*
|
||||
* User provided data if sigtrap=1, passed back to user via
|
||||
* siginfo_t::si_perf, e.g. to permit user to identify the event.
|
||||
* siginfo_t::si_perf_data, e.g. to permit user to identify the event.
|
||||
*/
|
||||
__u64 sig_data;
|
||||
};
|
||||
|
|
|
|||
|
|
@ -39,8 +39,6 @@ struct signalfd_siginfo {
|
|||
__s32 ssi_syscall;
|
||||
__u64 ssi_call_addr;
|
||||
__u32 ssi_arch;
|
||||
__u32 __pad3;
|
||||
__u64 ssi_perf;
|
||||
|
||||
/*
|
||||
* Pad strcture to 128 bytes. Remember to update the
|
||||
|
|
@ -51,7 +49,7 @@ struct signalfd_siginfo {
|
|||
* comes out of a read(2) and we really don't want to have
|
||||
* a compat on read(2).
|
||||
*/
|
||||
__u8 __pad[16];
|
||||
__u8 __pad[28];
|
||||
};
|
||||
|
||||
|
||||
|
|
|
|||
|
|
@ -239,6 +239,39 @@ enum gaudi_engine_id {
|
|||
GAUDI_ENGINE_ID_SIZE
|
||||
};
|
||||
|
||||
/*
|
||||
* ASIC specific PLL index
|
||||
*
|
||||
* Used to retrieve in frequency info of different IPs via
|
||||
* HL_INFO_PLL_FREQUENCY under HL_IOCTL_INFO IOCTL. The enums need to be
|
||||
* used as an index in struct hl_pll_frequency_info
|
||||
*/
|
||||
|
||||
enum hl_goya_pll_index {
|
||||
HL_GOYA_CPU_PLL = 0,
|
||||
HL_GOYA_IC_PLL,
|
||||
HL_GOYA_MC_PLL,
|
||||
HL_GOYA_MME_PLL,
|
||||
HL_GOYA_PCI_PLL,
|
||||
HL_GOYA_EMMC_PLL,
|
||||
HL_GOYA_TPC_PLL,
|
||||
HL_GOYA_PLL_MAX
|
||||
};
|
||||
|
||||
enum hl_gaudi_pll_index {
|
||||
HL_GAUDI_CPU_PLL = 0,
|
||||
HL_GAUDI_PCI_PLL,
|
||||
HL_GAUDI_SRAM_PLL,
|
||||
HL_GAUDI_HBM_PLL,
|
||||
HL_GAUDI_NIC_PLL,
|
||||
HL_GAUDI_DMA_PLL,
|
||||
HL_GAUDI_MESH_PLL,
|
||||
HL_GAUDI_MME_PLL,
|
||||
HL_GAUDI_TPC_PLL,
|
||||
HL_GAUDI_IF_PLL,
|
||||
HL_GAUDI_PLL_MAX
|
||||
};
|
||||
|
||||
enum hl_device_status {
|
||||
HL_DEVICE_STATUS_OPERATIONAL,
|
||||
HL_DEVICE_STATUS_IN_RESET,
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue