Merge git://git.kernel.org/pub/scm/linux/kernel/git/bpf/bpf after rc3
Cross-merge BPF, perf and other fixes after downstream PRs.
It restores BPF CI to green after critical fix
commit bc4394e5e7 ("perf: Fix the throttle error of some clock events")
No conflicts.
Signed-off-by: Alexei Starovoitov <ast@kernel.org>
This commit is contained in:
@@ -1210,6 +1210,11 @@ struct drm_xe_vm_bind {
|
||||
* there is no need to explicitly set that. When a queue of type
|
||||
* %DRM_XE_PXP_TYPE_HWDRM is created, the PXP default HWDRM session
|
||||
* (%XE_PXP_HWDRM_DEFAULT_SESSION) will be started, if isn't already running.
|
||||
* The user is expected to query the PXP status via the query ioctl (see
|
||||
* %DRM_XE_DEVICE_QUERY_PXP_STATUS) and to wait for PXP to be ready before
|
||||
* attempting to create a queue with this property. When a queue is created
|
||||
* before PXP is ready, the ioctl will return -EBUSY if init is still in
|
||||
* progress or -EIO if init failed.
|
||||
* Given that going into a power-saving state kills PXP HWDRM sessions,
|
||||
* runtime PM will be blocked while queues of this type are alive.
|
||||
* All PXP queues will be killed if a PXP invalidation event occurs.
|
||||
|
||||
@@ -2063,6 +2063,7 @@ union bpf_attr {
|
||||
* for updates resulting in a null checksum the value is set to
|
||||
* **CSUM_MANGLED_0** instead. Flag **BPF_F_PSEUDO_HDR** indicates
|
||||
* that the modified header field is part of the pseudo-header.
|
||||
* Flag **BPF_F_IPV6** should be set for IPv6 packets.
|
||||
*
|
||||
* This helper works in combination with **bpf_csum_diff**\ (),
|
||||
* which does not update the checksum in-place, but offers more
|
||||
@@ -6079,6 +6080,7 @@ enum {
|
||||
BPF_F_PSEUDO_HDR = (1ULL << 4),
|
||||
BPF_F_MARK_MANGLED_0 = (1ULL << 5),
|
||||
BPF_F_MARK_ENFORCE = (1ULL << 6),
|
||||
BPF_F_IPV6 = (1ULL << 7),
|
||||
};
|
||||
|
||||
/* BPF_FUNC_skb_set_tunnel_key and BPF_FUNC_skb_get_tunnel_key flags. */
|
||||
|
||||
@@ -208,10 +208,6 @@ enum {
|
||||
ETHTOOL_A_STATS_PHY_MAX = (__ETHTOOL_A_STATS_PHY_CNT - 1)
|
||||
};
|
||||
|
||||
/* generic netlink info */
|
||||
#define ETHTOOL_GENL_NAME "ethtool"
|
||||
#define ETHTOOL_GENL_VERSION 1
|
||||
|
||||
#define ETHTOOL_MCGRP_MONITOR_NAME "monitor"
|
||||
|
||||
#endif /* _UAPI_LINUX_ETHTOOL_NETLINK_H_ */
|
||||
|
||||
@@ -6,8 +6,8 @@
|
||||
#ifndef _UAPI_LINUX_ETHTOOL_NETLINK_GENERATED_H
|
||||
#define _UAPI_LINUX_ETHTOOL_NETLINK_GENERATED_H
|
||||
|
||||
#define ETHTOOL_FAMILY_NAME "ethtool"
|
||||
#define ETHTOOL_FAMILY_VERSION 1
|
||||
#define ETHTOOL_GENL_NAME "ethtool"
|
||||
#define ETHTOOL_GENL_VERSION 1
|
||||
|
||||
enum {
|
||||
ETHTOOL_UDP_TUNNEL_TYPE_VXLAN,
|
||||
|
||||
@@ -925,7 +925,8 @@
|
||||
#define SW_MUTE_DEVICE 0x0e /* set = device disabled */
|
||||
#define SW_PEN_INSERTED 0x0f /* set = pen inserted */
|
||||
#define SW_MACHINE_COVER 0x10 /* set = cover closed */
|
||||
#define SW_MAX 0x10
|
||||
#define SW_USB_INSERT 0x11 /* set = USB audio device connected */
|
||||
#define SW_MAX 0x11
|
||||
#define SW_CNT (SW_MAX+1)
|
||||
|
||||
/*
|
||||
|
||||
@@ -178,6 +178,7 @@ struct kvm_xen_exit {
|
||||
#define KVM_EXIT_NOTIFY 37
|
||||
#define KVM_EXIT_LOONGARCH_IOCSR 38
|
||||
#define KVM_EXIT_MEMORY_FAULT 39
|
||||
#define KVM_EXIT_TDX 40
|
||||
|
||||
/* For KVM_EXIT_INTERNAL_ERROR */
|
||||
/* Emulate instruction failed. */
|
||||
@@ -447,6 +448,27 @@ struct kvm_run {
|
||||
__u64 gpa;
|
||||
__u64 size;
|
||||
} memory_fault;
|
||||
/* KVM_EXIT_TDX */
|
||||
struct {
|
||||
__u64 flags;
|
||||
__u64 nr;
|
||||
union {
|
||||
struct {
|
||||
__u64 ret;
|
||||
__u64 data[5];
|
||||
} unknown;
|
||||
struct {
|
||||
__u64 ret;
|
||||
__u64 gpa;
|
||||
__u64 size;
|
||||
} get_quote;
|
||||
struct {
|
||||
__u64 ret;
|
||||
__u64 leaf;
|
||||
__u64 r11, r12, r13, r14;
|
||||
} get_tdvmcall_info;
|
||||
};
|
||||
} tdx;
|
||||
/* Fix the size of the union. */
|
||||
char padding[256];
|
||||
};
|
||||
|
||||
@@ -27,14 +27,14 @@
|
||||
* token, rem_id.
|
||||
* @MPTCP_EVENT_SUB_ESTABLISHED: A new subflow has been established. 'error'
|
||||
* should not be set. Attributes: token, family, loc_id, rem_id, saddr4 |
|
||||
* saddr6, daddr4 | daddr6, sport, dport, backup, if_idx [, error].
|
||||
* saddr6, daddr4 | daddr6, sport, dport, backup, if-idx [, error].
|
||||
* @MPTCP_EVENT_SUB_CLOSED: A subflow has been closed. An error (copy of
|
||||
* sk_err) could be set if an error has been detected for this subflow.
|
||||
* Attributes: token, family, loc_id, rem_id, saddr4 | saddr6, daddr4 |
|
||||
* daddr6, sport, dport, backup, if_idx [, error].
|
||||
* daddr6, sport, dport, backup, if-idx [, error].
|
||||
* @MPTCP_EVENT_SUB_PRIORITY: The priority of a subflow has changed. 'error'
|
||||
* should not be set. Attributes: token, family, loc_id, rem_id, saddr4 |
|
||||
* saddr6, daddr4 | daddr6, sport, dport, backup, if_idx [, error].
|
||||
* saddr6, daddr4 | daddr6, sport, dport, backup, if-idx [, error].
|
||||
* @MPTCP_EVENT_LISTENER_CREATED: A new PM listener is created. Attributes:
|
||||
* family, sport, saddr4 | saddr6.
|
||||
* @MPTCP_EVENT_LISTENER_CLOSED: A PM listener is closed. Attributes: family,
|
||||
|
||||
@@ -36,5 +36,6 @@ struct tiocl_selection {
|
||||
#define TIOCL_BLANKSCREEN 14 /* keep screen blank even if a key is pressed */
|
||||
#define TIOCL_BLANKEDSCREEN 15 /* return which vt was blanked */
|
||||
#define TIOCL_GETKMSGREDIRECT 17 /* get the vt the kernel messages are restricted to */
|
||||
#define TIOCL_GETBRACKETEDPASTE 18 /* get whether paste may be bracketed */
|
||||
|
||||
#endif /* _LINUX_TIOCL_H */
|
||||
|
||||
@@ -272,6 +272,15 @@
|
||||
*/
|
||||
#define UBLK_F_QUIESCE (1ULL << 12)
|
||||
|
||||
/*
|
||||
* If this feature is set, ublk_drv supports each (qid,tag) pair having
|
||||
* its own independent daemon task that is responsible for handling it.
|
||||
* If it is not set, daemons are per-queue instead, so for two pairs
|
||||
* (qid1,tag1) and (qid2,tag2), if qid1 == qid2, then the same task must
|
||||
* be responsible for handling (qid1,tag1) and (qid2,tag2).
|
||||
*/
|
||||
#define UBLK_F_PER_IO_DAEMON (1ULL << 13)
|
||||
|
||||
/* device state */
|
||||
#define UBLK_S_DEV_DEAD 0
|
||||
#define UBLK_S_DEV_LIVE 1
|
||||
|
||||
@@ -17,6 +17,10 @@
|
||||
#ifndef _UAPI_VM_SOCKETS_H
|
||||
#define _UAPI_VM_SOCKETS_H
|
||||
|
||||
#ifndef __KERNEL__
|
||||
#include <sys/socket.h> /* for struct sockaddr and sa_family_t */
|
||||
#endif
|
||||
|
||||
#include <linux/socket.h>
|
||||
#include <linux/types.h>
|
||||
|
||||
|
||||
@@ -2,6 +2,8 @@
|
||||
#ifndef _UAPI_LINUX_VT_H
|
||||
#define _UAPI_LINUX_VT_H
|
||||
|
||||
#include <linux/ioctl.h>
|
||||
#include <linux/types.h>
|
||||
|
||||
/*
|
||||
* These constants are also useful for user-level apps (e.g., VC
|
||||
@@ -84,4 +86,13 @@ struct vt_setactivate {
|
||||
|
||||
#define VT_SETACTIVATE 0x560F /* Activate and set the mode of a console */
|
||||
|
||||
/* get console size and cursor position */
|
||||
struct vt_consizecsrpos {
|
||||
__u16 con_rows; /* number of console rows */
|
||||
__u16 con_cols; /* number of console columns */
|
||||
__u16 csr_row; /* current cursor's row */
|
||||
__u16 csr_col; /* current cursor's column */
|
||||
};
|
||||
#define VT_GETCONSIZECSRPOS _IOR('V', 0x10, struct vt_consizecsrpos)
|
||||
|
||||
#endif /* _UAPI_LINUX_VT_H */
|
||||
|
||||
@@ -0,0 +1,152 @@
|
||||
/* SPDX-License-Identifier: GPL-2.0 WITH Linux-syscall-note */
|
||||
/*
|
||||
* Copyright (C) 2021-2024 Advanced Micro Devices, Inc.
|
||||
*/
|
||||
#ifndef _AMD_APML_H_
|
||||
#define _AMD_APML_H_
|
||||
|
||||
#include <linux/types.h>
|
||||
|
||||
/* Mailbox data size for data_in and data_out */
|
||||
#define AMD_SBI_MB_DATA_SIZE 4
|
||||
|
||||
struct apml_mbox_msg {
|
||||
/*
|
||||
* Mailbox Message ID
|
||||
*/
|
||||
__u32 cmd;
|
||||
/*
|
||||
* [0]...[3] mailbox 32bit input/output data
|
||||
*/
|
||||
__u32 mb_in_out;
|
||||
/*
|
||||
* Error code is returned in case of soft mailbox error
|
||||
*/
|
||||
__u32 fw_ret_code;
|
||||
};
|
||||
|
||||
struct apml_cpuid_msg {
|
||||
/*
|
||||
* CPUID input
|
||||
* [0]...[3] cpuid func,
|
||||
* [4][5] cpuid: thread
|
||||
* [6] cpuid: ext function & read eax/ebx or ecx/edx
|
||||
* [7:0] -> bits [7:4] -> ext function &
|
||||
* bit [0] read eax/ebx or ecx/edx
|
||||
* CPUID output
|
||||
*/
|
||||
__u64 cpu_in_out;
|
||||
/*
|
||||
* Status code for CPUID read
|
||||
*/
|
||||
__u32 fw_ret_code;
|
||||
__u32 pad;
|
||||
};
|
||||
|
||||
struct apml_mcamsr_msg {
|
||||
/*
|
||||
* MCAMSR input
|
||||
* [0]...[3] mca msr func,
|
||||
* [4][5] thread
|
||||
* MCAMSR output
|
||||
*/
|
||||
__u64 mcamsr_in_out;
|
||||
/*
|
||||
* Status code for MCA/MSR access
|
||||
*/
|
||||
__u32 fw_ret_code;
|
||||
__u32 pad;
|
||||
};
|
||||
|
||||
struct apml_reg_xfer_msg {
|
||||
/*
|
||||
* RMI register address offset
|
||||
*/
|
||||
__u16 reg_addr;
|
||||
/*
|
||||
* Register data for read/write
|
||||
*/
|
||||
__u8 data_in_out;
|
||||
/*
|
||||
* Register read or write
|
||||
*/
|
||||
__u8 rflag;
|
||||
};
|
||||
|
||||
/*
|
||||
* AMD sideband interface base IOCTL
|
||||
*/
|
||||
#define SB_BASE_IOCTL_NR 0xF9
|
||||
|
||||
/**
|
||||
* DOC: SBRMI_IOCTL_MBOX_CMD
|
||||
*
|
||||
* @Parameters
|
||||
*
|
||||
* @struct apml_mbox_msg
|
||||
* Pointer to the &struct apml_mbox_msg that will contain the protocol
|
||||
* information
|
||||
*
|
||||
* @Description
|
||||
* IOCTL command for APML messages using generic _IOWR
|
||||
* The IOCTL provides userspace access to AMD sideband mailbox protocol
|
||||
* - Mailbox message read/write(0x0~0xFF)
|
||||
* - returning "-EFAULT" if none of the above
|
||||
* "-EPROTOTYPE" error is returned to provide additional error details
|
||||
*/
|
||||
#define SBRMI_IOCTL_MBOX_CMD _IOWR(SB_BASE_IOCTL_NR, 0, struct apml_mbox_msg)
|
||||
|
||||
/**
|
||||
* DOC: SBRMI_IOCTL_CPUID_CMD
|
||||
*
|
||||
* @Parameters
|
||||
*
|
||||
* @struct apml_cpuid_msg
|
||||
* Pointer to the &struct apml_cpuid_msg that will contain the protocol
|
||||
* information
|
||||
*
|
||||
* @Description
|
||||
* IOCTL command for APML messages using generic _IOWR
|
||||
* The IOCTL provides userspace access to AMD sideband cpuid protocol
|
||||
* - CPUID protocol to get CPU details for Function/Ext Function
|
||||
* at thread level
|
||||
* - returning "-EFAULT" if none of the above
|
||||
* "-EPROTOTYPE" error is returned to provide additional error details
|
||||
*/
|
||||
#define SBRMI_IOCTL_CPUID_CMD _IOWR(SB_BASE_IOCTL_NR, 1, struct apml_cpuid_msg)
|
||||
|
||||
/**
|
||||
* DOC: SBRMI_IOCTL_MCAMSR_CMD
|
||||
*
|
||||
* @Parameters
|
||||
*
|
||||
* @struct apml_mcamsr_msg
|
||||
* Pointer to the &struct apml_mcamsr_msg that will contain the protocol
|
||||
* information
|
||||
*
|
||||
* @Description
|
||||
* IOCTL command for APML messages using generic _IOWR
|
||||
* The IOCTL provides userspace access to AMD sideband MCAMSR protocol
|
||||
* - MCAMSR protocol to get MCA bank details for Function at thread level
|
||||
* - returning "-EFAULT" if none of the above
|
||||
* "-EPROTOTYPE" error is returned to provide additional error details
|
||||
*/
|
||||
#define SBRMI_IOCTL_MCAMSR_CMD _IOWR(SB_BASE_IOCTL_NR, 2, struct apml_mcamsr_msg)
|
||||
|
||||
/**
|
||||
* DOC: SBRMI_IOCTL_REG_XFER_CMD
|
||||
*
|
||||
* @Parameters
|
||||
*
|
||||
* @struct apml_reg_xfer_msg
|
||||
* Pointer to the &struct apml_reg_xfer_msg that will contain the protocol
|
||||
* information
|
||||
*
|
||||
* @Description
|
||||
* IOCTL command for APML messages using generic _IOWR
|
||||
* The IOCTL provides userspace access to AMD sideband register xfer protocol
|
||||
* - Register xfer protocol to get/set hardware register for given offset
|
||||
*/
|
||||
#define SBRMI_IOCTL_REG_XFER_CMD _IOWR(SB_BASE_IOCTL_NR, 3, struct apml_reg_xfer_msg)
|
||||
|
||||
#endif /*_AMD_APML_H_*/
|
||||
Reference in New Issue
Block a user