mirror of
https://github.com/ukui/kernel.git
synced 2026-03-09 10:07:04 -07:00
Merge tag 'v5.3-rc3' into drm-next-5.4
Linux 5.3-rc3 Signed-off-by: Alex Deucher <alexander.deucher@amd.com>
This commit is contained in:
@@ -1,14 +1,14 @@
|
||||
# SPDX-License-Identifier: GPL-2.0
|
||||
ifeq ($(wildcard $(srctree)/arch/$(SRCARCH)/include/uapi/asm/a.out.h),)
|
||||
no-export-headers += a.out.h
|
||||
no-export-headers += linux/a.out.h
|
||||
endif
|
||||
|
||||
ifeq ($(wildcard $(srctree)/arch/$(SRCARCH)/include/uapi/asm/kvm.h),)
|
||||
no-export-headers += kvm.h
|
||||
no-export-headers += linux/kvm.h
|
||||
endif
|
||||
|
||||
ifeq ($(wildcard $(srctree)/arch/$(SRCARCH)/include/uapi/asm/kvm_para.h),)
|
||||
ifeq ($(wildcard $(objtree)/arch/$(SRCARCH)/include/generated/uapi/asm/kvm_para.h),)
|
||||
no-export-headers += kvm_para.h
|
||||
no-export-headers += linux/kvm_para.h
|
||||
endif
|
||||
endif
|
||||
@@ -19,15 +19,18 @@
|
||||
#define MAP_TYPE 0x0f /* Mask for type of mapping */
|
||||
#define MAP_FIXED 0x10 /* Interpret addr exactly */
|
||||
#define MAP_ANONYMOUS 0x20 /* don't use a file */
|
||||
#ifdef CONFIG_MMAP_ALLOW_UNINITIALIZED
|
||||
# define MAP_UNINITIALIZED 0x4000000 /* For anonymous mmap, memory could be uninitialized */
|
||||
#else
|
||||
# define MAP_UNINITIALIZED 0x0 /* Don't support this flag */
|
||||
#endif
|
||||
|
||||
/* 0x0100 - 0x80000 flags are defined in asm-generic/mman.h */
|
||||
/* 0x0100 - 0x4000 flags are defined in asm-generic/mman.h */
|
||||
#define MAP_POPULATE 0x008000 /* populate (prefault) pagetables */
|
||||
#define MAP_NONBLOCK 0x010000 /* do not block on IO */
|
||||
#define MAP_STACK 0x020000 /* give out an address that is best suited for process/thread stacks */
|
||||
#define MAP_HUGETLB 0x040000 /* create a huge page mapping */
|
||||
#define MAP_SYNC 0x080000 /* perform synchronous page faults for the mapping */
|
||||
#define MAP_FIXED_NOREPLACE 0x100000 /* MAP_FIXED which doesn't unmap underlying mapping */
|
||||
|
||||
#define MAP_UNINITIALIZED 0x4000000 /* For anonymous mmap, memory could be
|
||||
* uninitialized */
|
||||
|
||||
/*
|
||||
* Flags for mlock
|
||||
*/
|
||||
|
||||
@@ -9,13 +9,11 @@
|
||||
#define MAP_EXECUTABLE 0x1000 /* mark it as an executable */
|
||||
#define MAP_LOCKED 0x2000 /* pages are locked */
|
||||
#define MAP_NORESERVE 0x4000 /* don't check for reservations */
|
||||
#define MAP_POPULATE 0x8000 /* populate (prefault) pagetables */
|
||||
#define MAP_NONBLOCK 0x10000 /* do not block on IO */
|
||||
#define MAP_STACK 0x20000 /* give out an address that is best suited for process/thread stacks */
|
||||
#define MAP_HUGETLB 0x40000 /* create a huge page mapping */
|
||||
#define MAP_SYNC 0x80000 /* perform synchronous page faults for the mapping */
|
||||
|
||||
/* Bits [26:31] are reserved, see mman-common.h for MAP_HUGETLB usage */
|
||||
/*
|
||||
* Bits [26:31] are reserved, see asm-generic/hugetlb_encode.h
|
||||
* for MAP_HUGETLB usage
|
||||
*/
|
||||
|
||||
#define MCL_CURRENT 1 /* lock all current mappings */
|
||||
#define MCL_FUTURE 2 /* lock all future mappings */
|
||||
|
||||
@@ -117,6 +117,8 @@
|
||||
#define SO_RCVTIMEO_NEW 66
|
||||
#define SO_SNDTIMEO_NEW 67
|
||||
|
||||
#define SO_DETACH_REUSEPORT_BPF 68
|
||||
|
||||
#if !defined(__KERNEL__)
|
||||
|
||||
#if __BITS_PER_LONG == 64 || (defined(__x86_64__) && defined(__ILP32__))
|
||||
|
||||
@@ -844,9 +844,15 @@ __SYSCALL(__NR_fsconfig, sys_fsconfig)
|
||||
__SYSCALL(__NR_fsmount, sys_fsmount)
|
||||
#define __NR_fspick 433
|
||||
__SYSCALL(__NR_fspick, sys_fspick)
|
||||
#define __NR_pidfd_open 434
|
||||
__SYSCALL(__NR_pidfd_open, sys_pidfd_open)
|
||||
#ifdef __ARCH_WANT_SYS_CLONE3
|
||||
#define __NR_clone3 435
|
||||
__SYSCALL(__NR_clone3, sys_clone3)
|
||||
#endif
|
||||
|
||||
#undef __NR_syscalls
|
||||
#define __NR_syscalls 434
|
||||
#define __NR_syscalls 436
|
||||
|
||||
/*
|
||||
* 32 bit systems traditionally used different
|
||||
|
||||
@@ -891,13 +891,11 @@ struct drm_vmw_shader_arg {
|
||||
* surface.
|
||||
* @drm_vmw_surface_flag_create_buffer: Create a backup buffer if none is
|
||||
* given.
|
||||
* @drm_vmw_surface_flag_coherent: Back surface with coherent memory.
|
||||
*/
|
||||
enum drm_vmw_surface_flags {
|
||||
drm_vmw_surface_flag_shareable = (1 << 0),
|
||||
drm_vmw_surface_flag_scanout = (1 << 1),
|
||||
drm_vmw_surface_flag_create_buffer = (1 << 2),
|
||||
drm_vmw_surface_flag_coherent = (1 << 3),
|
||||
drm_vmw_surface_flag_create_buffer = (1 << 2)
|
||||
};
|
||||
|
||||
/**
|
||||
|
||||
@@ -29,17 +29,17 @@ struct adfs_discrecord {
|
||||
__u8 log2sharesize:4;
|
||||
__u8 unused40:4;
|
||||
__u8 big_flag:1;
|
||||
__u8 unused41:1;
|
||||
__u8 unused41:7;
|
||||
__u8 nzones_high;
|
||||
__u8 reserved43;
|
||||
__le32 format_version;
|
||||
__le32 root_size;
|
||||
__u8 unused52[60 - 52];
|
||||
};
|
||||
} __attribute__((packed, aligned(4)));
|
||||
|
||||
#define ADFS_DISCRECORD (0xc00)
|
||||
#define ADFS_DR_OFFSET (0x1c0)
|
||||
#define ADFS_DR_SIZE 60
|
||||
#define ADFS_DR_SIZE_BITS (ADFS_DR_SIZE << 3)
|
||||
|
||||
|
||||
#endif /* _UAPI_ADFS_FS_H */
|
||||
|
||||
@@ -281,6 +281,7 @@
|
||||
#define AUDIT_OBJ_GID 110
|
||||
#define AUDIT_FIELD_COMPARE 111
|
||||
#define AUDIT_EXE 112
|
||||
#define AUDIT_SADDR_FAM 113
|
||||
|
||||
#define AUDIT_ARG0 200
|
||||
#define AUDIT_ARG1 (AUDIT_ARG0+1)
|
||||
|
||||
@@ -107,12 +107,20 @@ enum batadv_icmp_packettype {
|
||||
* @BATADV_MCAST_WANT_ALL_UNSNOOPABLES: we want all packets destined for
|
||||
* 224.0.0.0/24 or ff02::1
|
||||
* @BATADV_MCAST_WANT_ALL_IPV4: we want all IPv4 multicast packets
|
||||
* (both link-local and routable ones)
|
||||
* @BATADV_MCAST_WANT_ALL_IPV6: we want all IPv6 multicast packets
|
||||
* (both link-local and routable ones)
|
||||
* @BATADV_MCAST_WANT_NO_RTR4: we have no IPv4 multicast router and therefore
|
||||
* only need routable IPv4 multicast packets we signed up for explicitly
|
||||
* @BATADV_MCAST_WANT_NO_RTR6: we have no IPv6 multicast router and therefore
|
||||
* only need routable IPv6 multicast packets we signed up for explicitly
|
||||
*/
|
||||
enum batadv_mcast_flags {
|
||||
BATADV_MCAST_WANT_ALL_UNSNOOPABLES = 1UL << 0,
|
||||
BATADV_MCAST_WANT_ALL_IPV4 = 1UL << 1,
|
||||
BATADV_MCAST_WANT_ALL_IPV6 = 1UL << 2,
|
||||
BATADV_MCAST_WANT_NO_RTR4 = 1UL << 3,
|
||||
BATADV_MCAST_WANT_NO_RTR6 = 1UL << 4,
|
||||
};
|
||||
|
||||
/* tt data subtypes */
|
||||
|
||||
+79
-10
@@ -170,6 +170,7 @@ enum bpf_prog_type {
|
||||
BPF_PROG_TYPE_FLOW_DISSECTOR,
|
||||
BPF_PROG_TYPE_CGROUP_SYSCTL,
|
||||
BPF_PROG_TYPE_RAW_TRACEPOINT_WRITABLE,
|
||||
BPF_PROG_TYPE_CGROUP_SOCKOPT,
|
||||
};
|
||||
|
||||
enum bpf_attach_type {
|
||||
@@ -192,6 +193,10 @@ enum bpf_attach_type {
|
||||
BPF_LIRC_MODE2,
|
||||
BPF_FLOW_DISSECTOR,
|
||||
BPF_CGROUP_SYSCTL,
|
||||
BPF_CGROUP_UDP4_RECVMSG,
|
||||
BPF_CGROUP_UDP6_RECVMSG,
|
||||
BPF_CGROUP_GETSOCKOPT,
|
||||
BPF_CGROUP_SETSOCKOPT,
|
||||
__MAX_BPF_ATTACH_TYPE
|
||||
};
|
||||
|
||||
@@ -260,6 +265,24 @@ enum bpf_attach_type {
|
||||
*/
|
||||
#define BPF_F_ANY_ALIGNMENT (1U << 1)
|
||||
|
||||
/* BPF_F_TEST_RND_HI32 is used in BPF_PROG_LOAD command for testing purpose.
|
||||
* Verifier does sub-register def/use analysis and identifies instructions whose
|
||||
* def only matters for low 32-bit, high 32-bit is never referenced later
|
||||
* through implicit zero extension. Therefore verifier notifies JIT back-ends
|
||||
* that it is safe to ignore clearing high 32-bit for these instructions. This
|
||||
* saves some back-ends a lot of code-gen. However such optimization is not
|
||||
* necessary on some arches, for example x86_64, arm64 etc, whose JIT back-ends
|
||||
* hence hasn't used verifier's analysis result. But, we really want to have a
|
||||
* way to be able to verify the correctness of the described optimization on
|
||||
* x86_64 on which testsuites are frequently exercised.
|
||||
*
|
||||
* So, this flag is introduced. Once it is set, verifier will randomize high
|
||||
* 32-bit for those instructions who has been identified as safe to ignore them.
|
||||
* Then, if verifier is not doing correct analysis, such randomization will
|
||||
* regress tests to expose bugs.
|
||||
*/
|
||||
#define BPF_F_TEST_RND_HI32 (1U << 2)
|
||||
|
||||
/* When BPF ldimm64's insn[0].src_reg != 0 then this can have
|
||||
* two extensions:
|
||||
*
|
||||
@@ -783,7 +806,7 @@ union bpf_attr {
|
||||
* based on a user-provided identifier for all traffic coming from
|
||||
* the tasks belonging to the related cgroup. See also the related
|
||||
* kernel documentation, available from the Linux sources in file
|
||||
* *Documentation/cgroup-v1/net_cls.txt*.
|
||||
* *Documentation/admin-guide/cgroup-v1/net_cls.rst*.
|
||||
*
|
||||
* The Linux kernel has two versions for cgroups: there are
|
||||
* cgroups v1 and cgroups v2. Both are available to users, who can
|
||||
@@ -1548,8 +1571,11 @@ union bpf_attr {
|
||||
* but this is only implemented for native XDP (with driver
|
||||
* support) as of this writing).
|
||||
*
|
||||
* All values for *flags* are reserved for future usage, and must
|
||||
* be left at zero.
|
||||
* The lower two bits of *flags* are used as the return code if
|
||||
* the map lookup fails. This is so that the return value can be
|
||||
* one of the XDP program return codes up to XDP_TX, as chosen by
|
||||
* the caller. Any higher bits in the *flags* argument must be
|
||||
* unset.
|
||||
*
|
||||
* When used to redirect packets to net devices, this helper
|
||||
* provides a high performance increase over **bpf_redirect**\ ().
|
||||
@@ -1744,6 +1770,7 @@ union bpf_attr {
|
||||
* * **BPF_SOCK_OPS_RTO_CB_FLAG** (retransmission time out)
|
||||
* * **BPF_SOCK_OPS_RETRANS_CB_FLAG** (retransmission)
|
||||
* * **BPF_SOCK_OPS_STATE_CB_FLAG** (TCP state change)
|
||||
* * **BPF_SOCK_OPS_RTT_CB_FLAG** (every RTT)
|
||||
*
|
||||
* Therefore, this function can be used to clear a callback flag by
|
||||
* setting the appropriate bit to zero. e.g. to disable the RTO
|
||||
@@ -2672,6 +2699,20 @@ union bpf_attr {
|
||||
* 0 on success.
|
||||
*
|
||||
* **-ENOENT** if the bpf-local-storage cannot be found.
|
||||
*
|
||||
* int bpf_send_signal(u32 sig)
|
||||
* Description
|
||||
* Send signal *sig* to the current task.
|
||||
* Return
|
||||
* 0 on success or successfully queued.
|
||||
*
|
||||
* **-EBUSY** if work queue under nmi is full.
|
||||
*
|
||||
* **-EINVAL** if *sig* is invalid.
|
||||
*
|
||||
* **-EPERM** if no permission to send the *sig*.
|
||||
*
|
||||
* **-EAGAIN** if bpf program can try again.
|
||||
*/
|
||||
#define __BPF_FUNC_MAPPER(FN) \
|
||||
FN(unspec), \
|
||||
@@ -2782,7 +2823,8 @@ union bpf_attr {
|
||||
FN(strtol), \
|
||||
FN(strtoul), \
|
||||
FN(sk_storage_get), \
|
||||
FN(sk_storage_delete),
|
||||
FN(sk_storage_delete), \
|
||||
FN(send_signal),
|
||||
|
||||
/* integer value in 'imm' field of BPF_CALL instruction selects which helper
|
||||
* function eBPF program intends to call
|
||||
@@ -3031,6 +3073,12 @@ struct bpf_tcp_sock {
|
||||
* sum(delta(snd_una)), or how many bytes
|
||||
* were acked.
|
||||
*/
|
||||
__u32 dsack_dups; /* RFC4898 tcpEStatsStackDSACKDups
|
||||
* total number of DSACK blocks received
|
||||
*/
|
||||
__u32 delivered; /* Total data packets delivered incl. rexmits */
|
||||
__u32 delivered_ce; /* Like the above but only ECE marked packets */
|
||||
__u32 icsk_retransmits; /* Number of unrecovered [RTO] timeouts */
|
||||
};
|
||||
|
||||
struct bpf_sock_tuple {
|
||||
@@ -3050,6 +3098,10 @@ struct bpf_sock_tuple {
|
||||
};
|
||||
};
|
||||
|
||||
struct bpf_xdp_sock {
|
||||
__u32 queue_id;
|
||||
};
|
||||
|
||||
#define XDP_PACKET_HEADROOM 256
|
||||
|
||||
/* User return codes for XDP prog type.
|
||||
@@ -3141,6 +3193,7 @@ struct bpf_prog_info {
|
||||
char name[BPF_OBJ_NAME_LEN];
|
||||
__u32 ifindex;
|
||||
__u32 gpl_compatible:1;
|
||||
__u32 :31; /* alignment pad */
|
||||
__u64 netns_dev;
|
||||
__u64 netns_ino;
|
||||
__u32 nr_jited_ksyms;
|
||||
@@ -3195,7 +3248,7 @@ struct bpf_sock_addr {
|
||||
__u32 user_ip4; /* Allows 1,2,4-byte read and 4-byte write.
|
||||
* Stored in network byte order.
|
||||
*/
|
||||
__u32 user_ip6[4]; /* Allows 1,2,4-byte read an 4-byte write.
|
||||
__u32 user_ip6[4]; /* Allows 1,2,4,8-byte read and 4,8-byte write.
|
||||
* Stored in network byte order.
|
||||
*/
|
||||
__u32 user_port; /* Allows 4-byte read and write.
|
||||
@@ -3204,12 +3257,13 @@ struct bpf_sock_addr {
|
||||
__u32 family; /* Allows 4-byte read, but no write */
|
||||
__u32 type; /* Allows 4-byte read, but no write */
|
||||
__u32 protocol; /* Allows 4-byte read, but no write */
|
||||
__u32 msg_src_ip4; /* Allows 1,2,4-byte read an 4-byte write.
|
||||
__u32 msg_src_ip4; /* Allows 1,2,4-byte read and 4-byte write.
|
||||
* Stored in network byte order.
|
||||
*/
|
||||
__u32 msg_src_ip6[4]; /* Allows 1,2,4-byte read an 4-byte write.
|
||||
__u32 msg_src_ip6[4]; /* Allows 1,2,4,8-byte read and 4,8-byte write.
|
||||
* Stored in network byte order.
|
||||
*/
|
||||
__bpf_md_ptr(struct bpf_sock *, sk);
|
||||
};
|
||||
|
||||
/* User bpf_sock_ops struct to access socket values and specify request ops
|
||||
@@ -3261,13 +3315,15 @@ struct bpf_sock_ops {
|
||||
__u32 sk_txhash;
|
||||
__u64 bytes_received;
|
||||
__u64 bytes_acked;
|
||||
__bpf_md_ptr(struct bpf_sock *, sk);
|
||||
};
|
||||
|
||||
/* Definitions for bpf_sock_ops_cb_flags */
|
||||
#define BPF_SOCK_OPS_RTO_CB_FLAG (1<<0)
|
||||
#define BPF_SOCK_OPS_RETRANS_CB_FLAG (1<<1)
|
||||
#define BPF_SOCK_OPS_STATE_CB_FLAG (1<<2)
|
||||
#define BPF_SOCK_OPS_ALL_CB_FLAGS 0x7 /* Mask of all currently
|
||||
#define BPF_SOCK_OPS_RTT_CB_FLAG (1<<3)
|
||||
#define BPF_SOCK_OPS_ALL_CB_FLAGS 0xF /* Mask of all currently
|
||||
* supported cb flags
|
||||
*/
|
||||
|
||||
@@ -3322,6 +3378,8 @@ enum {
|
||||
BPF_SOCK_OPS_TCP_LISTEN_CB, /* Called on listen(2), right after
|
||||
* socket transition to LISTEN state.
|
||||
*/
|
||||
BPF_SOCK_OPS_RTT_CB, /* Called on every RTT.
|
||||
*/
|
||||
};
|
||||
|
||||
/* List of TCP states. There is a build check in net/ipv4/tcp.c to detect
|
||||
@@ -3376,8 +3434,8 @@ struct bpf_raw_tracepoint_args {
|
||||
/* DIRECT: Skip the FIB rules and go to FIB table associated with device
|
||||
* OUTPUT: Do lookup from egress perspective; default is ingress
|
||||
*/
|
||||
#define BPF_FIB_LOOKUP_DIRECT BIT(0)
|
||||
#define BPF_FIB_LOOKUP_OUTPUT BIT(1)
|
||||
#define BPF_FIB_LOOKUP_DIRECT (1U << 0)
|
||||
#define BPF_FIB_LOOKUP_OUTPUT (1U << 1)
|
||||
|
||||
enum {
|
||||
BPF_FIB_LKUP_RET_SUCCESS, /* lookup successful */
|
||||
@@ -3500,4 +3558,15 @@ struct bpf_sysctl {
|
||||
*/
|
||||
};
|
||||
|
||||
struct bpf_sockopt {
|
||||
__bpf_md_ptr(struct bpf_sock *, sk);
|
||||
__bpf_md_ptr(void *, optval);
|
||||
__bpf_md_ptr(void *, optval_end);
|
||||
|
||||
__s32 level;
|
||||
__s32 optname;
|
||||
__s32 optlen;
|
||||
__s32 retval;
|
||||
};
|
||||
|
||||
#endif /* _UAPI__LINUX_BPF_H__ */
|
||||
|
||||
@@ -1,4 +1,4 @@
|
||||
/* SPDX-License-Identifier: GPL-2.0 */
|
||||
/* SPDX-License-Identifier: GPL-2.0 WITH Linux-syscall-note */
|
||||
#ifndef _UAPI_LINUX_BPFILTER_H
|
||||
#define _UAPI_LINUX_BPFILTER_H
|
||||
|
||||
|
||||
@@ -866,6 +866,8 @@ enum btrfs_raid_types {
|
||||
#define BTRFS_BLOCK_GROUP_RAID56_MASK (BTRFS_BLOCK_GROUP_RAID5 | \
|
||||
BTRFS_BLOCK_GROUP_RAID6)
|
||||
|
||||
#define BTRFS_BLOCK_GROUP_RAID1_MASK (BTRFS_BLOCK_GROUP_RAID1)
|
||||
|
||||
/*
|
||||
* We need a bit for restriper to be able to tell when chunks of type
|
||||
* SINGLE are available. This "extended" profile format is used in
|
||||
|
||||
@@ -144,6 +144,7 @@ static inline void cec_msg_set_reply_to(struct cec_msg *msg,
|
||||
|
||||
/* cec_msg flags field */
|
||||
#define CEC_MSG_FL_REPLY_TO_FOLLOWERS (1 << 0)
|
||||
#define CEC_MSG_FL_RAW (1 << 1)
|
||||
|
||||
/* cec_msg tx/rx_status field */
|
||||
#define CEC_TX_STATUS_OK (1 << 0)
|
||||
|
||||
+38
-18
@@ -86,10 +86,6 @@ typedef unsigned long long u_quad_t;
|
||||
|
||||
#define inline
|
||||
|
||||
struct timespec {
|
||||
long ts_sec;
|
||||
long ts_nsec;
|
||||
};
|
||||
#else /* DJGPP but not KERNEL */
|
||||
#include <sys/time.h>
|
||||
typedef unsigned long long u_quad_t;
|
||||
@@ -110,13 +106,6 @@ typedef unsigned long long u_quad_t;
|
||||
#define cdev_t dev_t
|
||||
#endif
|
||||
|
||||
#ifdef __CYGWIN32__
|
||||
struct timespec {
|
||||
time_t tv_sec; /* seconds */
|
||||
long tv_nsec; /* nanoseconds */
|
||||
};
|
||||
#endif
|
||||
|
||||
#ifndef __BIT_TYPES_DEFINED__
|
||||
#define __BIT_TYPES_DEFINED__
|
||||
typedef signed char int8_t;
|
||||
@@ -211,6 +200,11 @@ struct CodaFid {
|
||||
*/
|
||||
enum coda_vtype { C_VNON, C_VREG, C_VDIR, C_VBLK, C_VCHR, C_VLNK, C_VSOCK, C_VFIFO, C_VBAD };
|
||||
|
||||
struct coda_timespec {
|
||||
int64_t tv_sec; /* seconds */
|
||||
long tv_nsec; /* nanoseconds */
|
||||
};
|
||||
|
||||
struct coda_vattr {
|
||||
long va_type; /* vnode type (for create) */
|
||||
u_short va_mode; /* files access mode and type */
|
||||
@@ -220,9 +214,9 @@ struct coda_vattr {
|
||||
long va_fileid; /* file id */
|
||||
u_quad_t va_size; /* file size in bytes */
|
||||
long va_blocksize; /* blocksize preferred for i/o */
|
||||
struct timespec va_atime; /* time of last access */
|
||||
struct timespec va_mtime; /* time of last modification */
|
||||
struct timespec va_ctime; /* time file changed */
|
||||
struct coda_timespec va_atime; /* time of last access */
|
||||
struct coda_timespec va_mtime; /* time of last modification */
|
||||
struct coda_timespec va_ctime; /* time file changed */
|
||||
u_long va_gen; /* generation number of file */
|
||||
u_long va_flags; /* flags defined for file */
|
||||
cdev_t va_rdev; /* device special file represents */
|
||||
@@ -277,7 +271,8 @@ struct coda_statfs {
|
||||
#define CODA_STATFS 34
|
||||
#define CODA_STORE 35
|
||||
#define CODA_RELEASE 36
|
||||
#define CODA_NCALLS 37
|
||||
#define CODA_ACCESS_INTENT 37
|
||||
#define CODA_NCALLS 38
|
||||
|
||||
#define DOWNCALL(opcode) (opcode >= CODA_REPLACE && opcode <= CODA_PURGEFID)
|
||||
|
||||
@@ -287,7 +282,12 @@ struct coda_statfs {
|
||||
|
||||
#define CIOC_KERNEL_VERSION _IOWR('c', 10, size_t)
|
||||
|
||||
#define CODA_KERNEL_VERSION 3 /* 128-bit file identifiers */
|
||||
// CODA_KERNEL_VERSION 0 /* don't care about kernel version number */
|
||||
// CODA_KERNEL_VERSION 1 /* The old venus 4.6 compatible interface */
|
||||
// CODA_KERNEL_VERSION 2 /* venus_lookup gets an extra parameter */
|
||||
// CODA_KERNEL_VERSION 3 /* 128-bit file identifiers */
|
||||
// CODA_KERNEL_VERSION 4 /* 64-bit timespec */
|
||||
#define CODA_KERNEL_VERSION 5 /* access intent support */
|
||||
|
||||
/*
|
||||
* Venus <-> Coda RPC arguments
|
||||
@@ -295,8 +295,8 @@ struct coda_statfs {
|
||||
struct coda_in_hdr {
|
||||
u_int32_t opcode;
|
||||
u_int32_t unique; /* Keep multiple outstanding msgs distinct */
|
||||
pid_t pid;
|
||||
pid_t pgid;
|
||||
__kernel_pid_t pid;
|
||||
__kernel_pid_t pgid;
|
||||
vuid_t uid;
|
||||
};
|
||||
|
||||
@@ -642,6 +642,25 @@ struct coda_statfs_out {
|
||||
struct coda_statfs stat;
|
||||
};
|
||||
|
||||
#define CODA_ACCESS_TYPE_READ 1
|
||||
#define CODA_ACCESS_TYPE_WRITE 2
|
||||
#define CODA_ACCESS_TYPE_MMAP 3
|
||||
#define CODA_ACCESS_TYPE_READ_FINISH 4
|
||||
#define CODA_ACCESS_TYPE_WRITE_FINISH 5
|
||||
|
||||
/* coda_access_intent: NO_OUT */
|
||||
struct coda_access_intent_in {
|
||||
struct coda_in_hdr ih;
|
||||
struct CodaFid VFid;
|
||||
int count;
|
||||
int pos;
|
||||
int type;
|
||||
};
|
||||
|
||||
struct coda_access_intent_out {
|
||||
struct coda_out_hdr out;
|
||||
};
|
||||
|
||||
/*
|
||||
* Occasionally, we don't cache the fid returned by CODA_LOOKUP.
|
||||
* For instance, if the fid is inconsistent.
|
||||
@@ -673,6 +692,7 @@ union inputArgs {
|
||||
struct coda_open_by_fd_in coda_open_by_fd;
|
||||
struct coda_open_by_path_in coda_open_by_path;
|
||||
struct coda_statfs_in coda_statfs;
|
||||
struct coda_access_intent_in coda_access_intent;
|
||||
};
|
||||
|
||||
union outputArgs {
|
||||
|
||||
@@ -1,28 +0,0 @@
|
||||
/* SPDX-License-Identifier: GPL-2.0 WITH Linux-syscall-note */
|
||||
#ifndef _UAPI__CODA_PSDEV_H
|
||||
#define _UAPI__CODA_PSDEV_H
|
||||
|
||||
#include <linux/magic.h>
|
||||
|
||||
#define CODA_PSDEV_MAJOR 67
|
||||
#define MAX_CODADEVS 5 /* how many do we allow */
|
||||
|
||||
|
||||
/* messages between coda filesystem in kernel and Venus */
|
||||
struct upc_req {
|
||||
struct list_head uc_chain;
|
||||
caddr_t uc_data;
|
||||
u_short uc_flags;
|
||||
u_short uc_inSize; /* Size is at most 5000 bytes */
|
||||
u_short uc_outSize;
|
||||
u_short uc_opcode; /* copied from data to save lookup */
|
||||
int uc_unique;
|
||||
wait_queue_head_t uc_sleep; /* process' wait queue */
|
||||
};
|
||||
|
||||
#define CODA_REQ_ASYNC 0x1
|
||||
#define CODA_REQ_READ 0x2
|
||||
#define CODA_REQ_WRITE 0x4
|
||||
#define CODA_REQ_ABORT 0x8
|
||||
|
||||
#endif /* _UAPI__CODA_PSDEV_H */
|
||||
@@ -104,6 +104,8 @@ enum devlink_command {
|
||||
DEVLINK_CMD_HEALTH_REPORTER_DUMP_CLEAR,
|
||||
|
||||
DEVLINK_CMD_FLASH_UPDATE,
|
||||
DEVLINK_CMD_FLASH_UPDATE_END, /* notification only */
|
||||
DEVLINK_CMD_FLASH_UPDATE_STATUS, /* notification only */
|
||||
|
||||
/* add new commands above here */
|
||||
__DEVLINK_CMD_MAX,
|
||||
@@ -167,6 +169,14 @@ enum devlink_port_flavour {
|
||||
DEVLINK_PORT_FLAVOUR_DSA, /* Distributed switch architecture
|
||||
* interconnect port.
|
||||
*/
|
||||
DEVLINK_PORT_FLAVOUR_PCI_PF, /* Represents eswitch port for
|
||||
* the PCI PF. It is an internal
|
||||
* port that faces the PCI PF.
|
||||
*/
|
||||
DEVLINK_PORT_FLAVOUR_PCI_VF, /* Represents eswitch port
|
||||
* for the PCI VF. It is an internal
|
||||
* port that faces the PCI VF.
|
||||
*/
|
||||
};
|
||||
|
||||
enum devlink_param_cmode {
|
||||
@@ -331,6 +341,12 @@ enum devlink_attr {
|
||||
|
||||
DEVLINK_ATTR_FLASH_UPDATE_FILE_NAME, /* string */
|
||||
DEVLINK_ATTR_FLASH_UPDATE_COMPONENT, /* string */
|
||||
DEVLINK_ATTR_FLASH_UPDATE_STATUS_MSG, /* string */
|
||||
DEVLINK_ATTR_FLASH_UPDATE_STATUS_DONE, /* u64 */
|
||||
DEVLINK_ATTR_FLASH_UPDATE_STATUS_TOTAL, /* u64 */
|
||||
|
||||
DEVLINK_ATTR_PORT_PCI_PF_NUMBER, /* u16 */
|
||||
DEVLINK_ATTR_PORT_PCI_VF_NUMBER, /* u16 */
|
||||
|
||||
/* add new attributes above here, update the policy in devlink.c */
|
||||
|
||||
|
||||
@@ -1,6 +1,8 @@
|
||||
/* SPDX-License-Identifier: LGPL-2.1+ WITH Linux-syscall-note */
|
||||
/*
|
||||
* audio.h
|
||||
* audio.h - DEPRECATED MPEG-TS audio decoder API
|
||||
*
|
||||
* NOTE: should not be used on future drivers
|
||||
*
|
||||
* Copyright (C) 2000 Ralph Metzler <ralph@convergence.de>
|
||||
* & Marcus Metzler <marcus@convergence.de>
|
||||
@@ -52,7 +54,7 @@ typedef enum {
|
||||
typedef struct audio_mixer {
|
||||
unsigned int volume_left;
|
||||
unsigned int volume_right;
|
||||
// what else do we need? bass, pass-through, ...
|
||||
/* what else do we need? bass, pass-through, ... */
|
||||
} audio_mixer_t;
|
||||
|
||||
|
||||
|
||||
+105
-69
@@ -1,6 +1,8 @@
|
||||
/* SPDX-License-Identifier: LGPL-2.1+ WITH Linux-syscall-note */
|
||||
/*
|
||||
* osd.h
|
||||
* osd.h - DEPRECATED On Screen Display API
|
||||
*
|
||||
* NOTE: should not be used on future drivers
|
||||
*
|
||||
* Copyright (C) 2001 Ralph Metzler <ralph@convergence.de>
|
||||
* & Marcus Metzler <marcus@convergence.de>
|
||||
@@ -28,74 +30,108 @@
|
||||
#include <linux/compiler.h>
|
||||
|
||||
typedef enum {
|
||||
// All functions return -2 on "not open"
|
||||
OSD_Close=1, // ()
|
||||
// Disables OSD and releases the buffers
|
||||
// returns 0 on success
|
||||
OSD_Open, // (x0,y0,x1,y1,BitPerPixel[2/4/8](color&0x0F),mix[0..15](color&0xF0))
|
||||
// Opens OSD with this size and bit depth
|
||||
// returns 0 on success, -1 on DRAM allocation error, -2 on "already open"
|
||||
OSD_Show, // ()
|
||||
// enables OSD mode
|
||||
// returns 0 on success
|
||||
OSD_Hide, // ()
|
||||
// disables OSD mode
|
||||
// returns 0 on success
|
||||
OSD_Clear, // ()
|
||||
// Sets all pixel to color 0
|
||||
// returns 0 on success
|
||||
OSD_Fill, // (color)
|
||||
// Sets all pixel to color <col>
|
||||
// returns 0 on success
|
||||
OSD_SetColor, // (color,R{x0},G{y0},B{x1},opacity{y1})
|
||||
// set palette entry <num> to <r,g,b>, <mix> and <trans> apply
|
||||
// R,G,B: 0..255
|
||||
// R=Red, G=Green, B=Blue
|
||||
// opacity=0: pixel opacity 0% (only video pixel shows)
|
||||
// opacity=1..254: pixel opacity as specified in header
|
||||
// opacity=255: pixel opacity 100% (only OSD pixel shows)
|
||||
// returns 0 on success, -1 on error
|
||||
OSD_SetPalette, // (firstcolor{color},lastcolor{x0},data)
|
||||
// Set a number of entries in the palette
|
||||
// sets the entries "firstcolor" through "lastcolor" from the array "data"
|
||||
// data has 4 byte for each color:
|
||||
// R,G,B, and a opacity value: 0->transparent, 1..254->mix, 255->pixel
|
||||
OSD_SetTrans, // (transparency{color})
|
||||
// Sets transparency of mixed pixel (0..15)
|
||||
// returns 0 on success
|
||||
OSD_SetPixel, // (x0,y0,color)
|
||||
// sets pixel <x>,<y> to color number <col>
|
||||
// returns 0 on success, -1 on error
|
||||
OSD_GetPixel, // (x0,y0)
|
||||
// returns color number of pixel <x>,<y>, or -1
|
||||
OSD_SetRow, // (x0,y0,x1,data)
|
||||
// fills pixels x0,y through x1,y with the content of data[]
|
||||
// returns 0 on success, -1 on clipping all pixel (no pixel drawn)
|
||||
OSD_SetBlock, // (x0,y0,x1,y1,increment{color},data)
|
||||
// fills pixels x0,y0 through x1,y1 with the content of data[]
|
||||
// inc contains the width of one line in the data block,
|
||||
// inc<=0 uses blockwidth as linewidth
|
||||
// returns 0 on success, -1 on clipping all pixel
|
||||
OSD_FillRow, // (x0,y0,x1,color)
|
||||
// fills pixels x0,y through x1,y with the color <col>
|
||||
// returns 0 on success, -1 on clipping all pixel
|
||||
OSD_FillBlock, // (x0,y0,x1,y1,color)
|
||||
// fills pixels x0,y0 through x1,y1 with the color <col>
|
||||
// returns 0 on success, -1 on clipping all pixel
|
||||
OSD_Line, // (x0,y0,x1,y1,color)
|
||||
// draw a line from x0,y0 to x1,y1 with the color <col>
|
||||
// returns 0 on success
|
||||
OSD_Query, // (x0,y0,x1,y1,xasp{color}}), yasp=11
|
||||
// fills parameters with the picture dimensions and the pixel aspect ratio
|
||||
// returns 0 on success
|
||||
OSD_Test, // ()
|
||||
// draws a test picture. for debugging purposes only
|
||||
// returns 0 on success
|
||||
// TODO: remove "test" in final version
|
||||
OSD_Text, // (x0,y0,size,color,text)
|
||||
OSD_SetWindow, // (x0) set window with number 0<x0<8 as current
|
||||
OSD_MoveWindow, // move current window to (x0, y0)
|
||||
OSD_OpenRaw, // Open other types of OSD windows
|
||||
/* All functions return -2 on "not open" */
|
||||
OSD_Close = 1, /* () */
|
||||
/*
|
||||
* Disables OSD and releases the buffers
|
||||
* returns 0 on success
|
||||
*/
|
||||
OSD_Open, /* (x0,y0,x1,y1,BitPerPixel[2/4/8](color&0x0F),mix[0..15](color&0xF0)) */
|
||||
/*
|
||||
* Opens OSD with this size and bit depth
|
||||
* returns 0 on success, -1 on DRAM allocation error, -2 on "already open"
|
||||
*/
|
||||
OSD_Show, /* () */
|
||||
/*
|
||||
* enables OSD mode
|
||||
* returns 0 on success
|
||||
*/
|
||||
OSD_Hide, /* () */
|
||||
/*
|
||||
* disables OSD mode
|
||||
* returns 0 on success
|
||||
*/
|
||||
OSD_Clear, /* () */
|
||||
/*
|
||||
* Sets all pixel to color 0
|
||||
* returns 0 on success
|
||||
*/
|
||||
OSD_Fill, /* (color) */
|
||||
/*
|
||||
* Sets all pixel to color <col>
|
||||
* returns 0 on success
|
||||
*/
|
||||
OSD_SetColor, /* (color,R{x0},G{y0},B{x1},opacity{y1}) */
|
||||
/*
|
||||
* set palette entry <num> to <r,g,b>, <mix> and <trans> apply
|
||||
* R,G,B: 0..255
|
||||
* R=Red, G=Green, B=Blue
|
||||
* opacity=0: pixel opacity 0% (only video pixel shows)
|
||||
* opacity=1..254: pixel opacity as specified in header
|
||||
* opacity=255: pixel opacity 100% (only OSD pixel shows)
|
||||
* returns 0 on success, -1 on error
|
||||
*/
|
||||
OSD_SetPalette, /* (firstcolor{color},lastcolor{x0},data) */
|
||||
/*
|
||||
* Set a number of entries in the palette
|
||||
* sets the entries "firstcolor" through "lastcolor" from the array "data"
|
||||
* data has 4 byte for each color:
|
||||
* R,G,B, and a opacity value: 0->transparent, 1..254->mix, 255->pixel
|
||||
*/
|
||||
OSD_SetTrans, /* (transparency{color}) */
|
||||
/*
|
||||
* Sets transparency of mixed pixel (0..15)
|
||||
* returns 0 on success
|
||||
*/
|
||||
OSD_SetPixel, /* (x0,y0,color) */
|
||||
/*
|
||||
* sets pixel <x>,<y> to color number <col>
|
||||
* returns 0 on success, -1 on error
|
||||
*/
|
||||
OSD_GetPixel, /* (x0,y0) */
|
||||
/* returns color number of pixel <x>,<y>, or -1 */
|
||||
OSD_SetRow, /* (x0,y0,x1,data) */
|
||||
/*
|
||||
* fills pixels x0,y through x1,y with the content of data[]
|
||||
* returns 0 on success, -1 on clipping all pixel (no pixel drawn)
|
||||
*/
|
||||
OSD_SetBlock, /* (x0,y0,x1,y1,increment{color},data) */
|
||||
/*
|
||||
* fills pixels x0,y0 through x1,y1 with the content of data[]
|
||||
* inc contains the width of one line in the data block,
|
||||
* inc<=0 uses blockwidth as linewidth
|
||||
* returns 0 on success, -1 on clipping all pixel
|
||||
*/
|
||||
OSD_FillRow, /* (x0,y0,x1,color) */
|
||||
/*
|
||||
* fills pixels x0,y through x1,y with the color <col>
|
||||
* returns 0 on success, -1 on clipping all pixel
|
||||
*/
|
||||
OSD_FillBlock, /* (x0,y0,x1,y1,color) */
|
||||
/*
|
||||
* fills pixels x0,y0 through x1,y1 with the color <col>
|
||||
* returns 0 on success, -1 on clipping all pixel
|
||||
*/
|
||||
OSD_Line, /* (x0,y0,x1,y1,color) */
|
||||
/*
|
||||
* draw a line from x0,y0 to x1,y1 with the color <col>
|
||||
* returns 0 on success
|
||||
*/
|
||||
OSD_Query, /* (x0,y0,x1,y1,xasp{color}}), yasp=11 */
|
||||
/*
|
||||
* fills parameters with the picture dimensions and the pixel aspect ratio
|
||||
* returns 0 on success
|
||||
*/
|
||||
OSD_Test, /* () */
|
||||
/*
|
||||
* draws a test picture. for debugging purposes only
|
||||
* returns 0 on success
|
||||
* TODO: remove "test" in final version
|
||||
*/
|
||||
OSD_Text, /* (x0,y0,size,color,text) */
|
||||
OSD_SetWindow, /* (x0) set window with number 0<x0<8 as current */
|
||||
OSD_MoveWindow, /* move current window to (x0, y0) */
|
||||
OSD_OpenRaw, /* Open other types of OSD windows */
|
||||
} OSD_Command;
|
||||
|
||||
typedef struct osd_cmd_s {
|
||||
|
||||
@@ -1,6 +1,8 @@
|
||||
/* SPDX-License-Identifier: LGPL-2.1+ WITH Linux-syscall-note */
|
||||
/*
|
||||
* video.h
|
||||
* video.h - DEPRECATED MPEG-TS video decoder API
|
||||
*
|
||||
* NOTE: should not be used on future drivers
|
||||
*
|
||||
* Copyright (C) 2000 Marcus Metzler <marcus@convergence.de>
|
||||
* & Ralph Metzler <ralph@convergence.de>
|
||||
|
||||
@@ -1483,6 +1483,8 @@ enum ethtool_link_mode_bit_indices {
|
||||
ETHTOOL_LINK_MODE_200000baseLR4_ER4_FR4_Full_BIT = 64,
|
||||
ETHTOOL_LINK_MODE_200000baseDR4_Full_BIT = 65,
|
||||
ETHTOOL_LINK_MODE_200000baseCR4_Full_BIT = 66,
|
||||
ETHTOOL_LINK_MODE_100baseT1_Full_BIT = 67,
|
||||
ETHTOOL_LINK_MODE_1000baseT1_Full_BIT = 68,
|
||||
|
||||
/* must be last entry */
|
||||
__ETHTOOL_LINK_MODE_MASK_NBITS
|
||||
|
||||
Some files were not shown because too many files have changed in this diff Show More
Reference in New Issue
Block a user