For dependencies in following patches.
Showing the changes to include/uapi (9 of 1305 files). Show all
Unified · Split
| @@ -760,8 +760,10 @@ __SYSCALL(__NR_rseq, sys_rseq) · 759 unmodified lines | ||
| 760 | 760 | #define __NR_ftruncate __NR3264_ftruncate |
| 761 | 761 | #define __NR_lseek __NR3264_lseek |
| 762 | 762 | #define __NR_sendfile __NR3264_sendfile |
| 763 | +#if defined(__ARCH_WANT_NEW_STAT) || defined(__ARCH_WANT_STAT64) | |
| 763 | 764 | #define __NR_newfstatat __NR3264_fstatat |
| 764 | 765 | #define __NR_fstat __NR3264_fstat |
| 766 | +#endif | |
| 765 | 767 | #define __NR_mmap __NR3264_mmap |
| 766 | 768 | #define __NR_fadvise64 __NR3264_fadvise64 |
| 767 | 769 | #ifdef __NR3264_stat |
| @@ -776,8 +778,10 @@ __SYSCALL(__NR_rseq, sys_rseq) · 8 unmodified lines | ||
| 776 | 778 | #define __NR_ftruncate64 __NR3264_ftruncate |
| 777 | 779 | #define __NR_llseek __NR3264_lseek |
| 778 | 780 | #define __NR_sendfile64 __NR3264_sendfile |
| 781 | +#if defined(__ARCH_WANT_NEW_STAT) || defined(__ARCH_WANT_STAT64) | |
| 779 | 782 | #define __NR_fstatat64 __NR3264_fstatat |
| 780 | 783 | #define __NR_fstat64 __NR3264_fstat |
| 784 | +#endif | |
| 781 | 785 | #define __NR_mmap2 __NR3264_mmap |
| 782 | 786 | #define __NR_fadvise64_64 __NR3264_fadvise64 |
| 783 | 787 | #ifdef __NR3264_stat |
| @@ -2170,7 +2170,7 @@ union bpf_attr { · 2169 unmodified lines | ||
| 2170 | 2170 | * Return |
| 2171 | 2171 | * 0 on success, or a negative error in case of failure. |
| 2172 | 2172 | * |
| 2173 | − * struct bpf_sock *bpf_sk_lookup_tcp(void *ctx, struct bpf_sock_tuple *tuple, u32 tuple_size, u32 netns, u64 flags) | |
| 2173 | + * struct bpf_sock *bpf_sk_lookup_tcp(void *ctx, struct bpf_sock_tuple *tuple, u32 tuple_size, u64 netns, u64 flags) | |
| 2174 | 2174 | * Description |
| 2175 | 2175 | * Look for TCP socket matching *tuple*, optionally in a child |
| 2176 | 2176 | * network namespace *netns*. The return value must be checked, |
| @@ -2187,12 +2187,14 @@ union bpf_attr { · 10 unmodified lines | ||
| 2187 | 2187 | * **sizeof**\ (*tuple*\ **->ipv6**) |
| 2188 | 2188 | * Look for an IPv6 socket. |
| 2189 | 2189 | * |
| 2190 | − * If the *netns* is zero, then the socket lookup table in the | |
| 2191 | − * netns associated with the *ctx* will be used. For the TC hooks, | |
| 2192 | − * this in the netns of the device in the skb. For socket hooks, | |
| 2193 | − * this in the netns of the socket. If *netns* is non-zero, then | |
| 2194 | − * it specifies the ID of the netns relative to the netns | |
| 2195 | − * associated with the *ctx*. | |
| 2190 | + * If the *netns* is a negative signed 32-bit integer, then the | |
| 2191 | + * socket lookup table in the netns associated with the *ctx* will | |
| 2192 | + * will be used. For the TC hooks, this is the netns of the device | |
| 2193 | + * in the skb. For socket hooks, this is the netns of the socket. | |
| 2194 | + * If *netns* is any other signed 32-bit value greater than or | |
| 2195 | + * equal to zero then it specifies the ID of the netns relative to | |
| 2196 | + * the netns associated with the *ctx*. *netns* values beyond the | |
| 2197 | + * range of 32-bit integers are reserved for future use. | |
| 2196 | 2198 | * |
| 2197 | 2199 | * All values for *flags* are reserved for future usage, and must |
| 2198 | 2200 | * be left at zero. |
| @@ -2201,8 +2203,10 @@ union bpf_attr { · 2 unmodified lines | ||
| 2201 | 2203 | * **CONFIG_NET** configuration option. |
| 2202 | 2204 | * Return |
| 2203 | 2205 | * Pointer to *struct bpf_sock*, or NULL in case of failure. |
| 2206 | + * For sockets with reuseport option, the *struct bpf_sock* | |
| 2207 | + * result is from reuse->socks[] using the hash of the tuple. | |
| 2204 | 2208 | * |
| 2205 | − * struct bpf_sock *bpf_sk_lookup_udp(void *ctx, struct bpf_sock_tuple *tuple, u32 tuple_size, u32 netns, u64 flags) | |
| 2209 | + * struct bpf_sock *bpf_sk_lookup_udp(void *ctx, struct bpf_sock_tuple *tuple, u32 tuple_size, u64 netns, u64 flags) | |
| 2206 | 2210 | * Description |
| 2207 | 2211 | * Look for UDP socket matching *tuple*, optionally in a child |
| 2208 | 2212 | * network namespace *netns*. The return value must be checked, |
| @@ -2219,12 +2223,14 @@ union bpf_attr { · 10 unmodified lines | ||
| 2219 | 2223 | * **sizeof**\ (*tuple*\ **->ipv6**) |
| 2220 | 2224 | * Look for an IPv6 socket. |
| 2221 | 2225 | * |
| 2222 | − * If the *netns* is zero, then the socket lookup table in the | |
| 2223 | − * netns associated with the *ctx* will be used. For the TC hooks, | |
| 2224 | − * this in the netns of the device in the skb. For socket hooks, | |
| 2225 | − * this in the netns of the socket. If *netns* is non-zero, then | |
| 2226 | − * it specifies the ID of the netns relative to the netns | |
| 2227 | − * associated with the *ctx*. | |
| 2226 | + * If the *netns* is a negative signed 32-bit integer, then the | |
| 2227 | + * socket lookup table in the netns associated with the *ctx* will | |
| 2228 | + * will be used. For the TC hooks, this is the netns of the device | |
| 2229 | + * in the skb. For socket hooks, this is the netns of the socket. | |
| 2230 | + * If *netns* is any other signed 32-bit value greater than or | |
| 2231 | + * equal to zero then it specifies the ID of the netns relative to | |
| 2232 | + * the netns associated with the *ctx*. *netns* values beyond the | |
| 2233 | + * range of 32-bit integers are reserved for future use. | |
| 2228 | 2234 | * |
| 2229 | 2235 | * All values for *flags* are reserved for future usage, and must |
| 2230 | 2236 | * be left at zero. |
| @@ -2233,6 +2239,8 @@ union bpf_attr { · 2 unmodified lines | ||
| 2233 | 2239 | * **CONFIG_NET** configuration option. |
| 2234 | 2240 | * Return |
| 2235 | 2241 | * Pointer to *struct bpf_sock*, or NULL in case of failure. |
| 2242 | + * For sockets with reuseport option, the *struct bpf_sock* | |
| 2243 | + * result is from reuse->socks[] using the hash of the tuple. | |
| 2236 | 2244 | * |
| 2237 | 2245 | * int bpf_sk_release(struct bpf_sock *sk) |
| 2238 | 2246 | * Description |
| @@ -2405,6 +2413,9 @@ enum bpf_func_id { · 166 unmodified lines | ||
| 2405 | 2413 | /* BPF_FUNC_perf_event_output for sk_buff input context. */ |
| 2406 | 2414 | #define BPF_F_CTXLEN_MASK (0xfffffULL << 32) |
| 2407 | 2415 | |
| 2416 | +/* Current network namespace */ | |
| 2417 | +#define BPF_F_CURRENT_NETNS (-1L) | |
| 2418 | + | |
| 2408 | 2419 | /* Mode for BPF_FUNC_skb_adjust_room helper. */ |
| 2409 | 2420 | enum bpf_adj_room_mode { |
| 2410 | 2421 | BPF_ADJ_ROOM_NET, |
| @@ -2422,6 +2433,12 @@ enum bpf_lwt_encap_mode { · 11 unmodified lines | ||
| 2422 | 2433 | BPF_LWT_ENCAP_SEG6_INLINE |
| 2423 | 2434 | }; |
| 2424 | 2435 | |
| 2436 | +#define __bpf_md_ptr(type, name) \ | |
| 2437 | +union { \ | |
| 2438 | + type name; \ | |
| 2439 | + __u64 :64; \ | |
| 2440 | +} __attribute__((aligned(8))) | |
| 2441 | + | |
| 2425 | 2442 | /* user accessible mirror of in-kernel sk_buff. |
| 2426 | 2443 | * new fields can only be added to the end of this structure |
| 2427 | 2444 | */ |
| @@ -2456,7 +2473,7 @@ struct __sk_buff { · 28 unmodified lines | ||
| 2456 | 2473 | /* ... here. */ |
| 2457 | 2474 | |
| 2458 | 2475 | __u32 data_meta; |
| 2459 | − struct bpf_flow_keys *flow_keys; | |
| 2476 | + __bpf_md_ptr(struct bpf_flow_keys *, flow_keys); | |
| 2460 | 2477 | }; |
| 2461 | 2478 | |
| 2462 | 2479 | struct bpf_tunnel_key { |
| @@ -2572,8 +2589,8 @@ enum sk_action { · 109 unmodified lines | ||
| 2572 | 2589 | * be added to the end of this structure |
| 2573 | 2590 | */ |
| 2574 | 2591 | struct sk_msg_md { |
| 2575 | − void *data; | |
| 2576 | − void *data_end; | |
| 2592 | + __bpf_md_ptr(void *, data); | |
| 2593 | + __bpf_md_ptr(void *, data_end); | |
| 2577 | 2594 | |
| 2578 | 2595 | __u32 family; |
| 2579 | 2596 | __u32 remote_ip4; /* Stored in network byte order */ |
| @@ -2589,8 +2606,9 @@ struct sk_reuseport_md { · 9 unmodified lines | ||
| 2589 | 2606 | * Start of directly accessible data. It begins from |
| 2590 | 2607 | * the tcp/udp header. |
| 2591 | 2608 | */ |
| 2592 | − void *data; | |
| 2593 | − void *data_end; /* End of directly accessible data */ | |
| 2609 | + __bpf_md_ptr(void *, data); | |
| 2610 | + /* End of directly accessible data */ | |
| 2611 | + __bpf_md_ptr(void *, data_end); | |
| 2594 | 2612 | /* |
| 2595 | 2613 | * Total length of packet (starting from the tcp/udp header). |
| 2596 | 2614 | * Note that the directly accessible bytes (data_end - data) |
| @@ -716,7 +716,6 @@ · 715 unmodified lines | ||
| 716 | 716 | * the situation described above. |
| 717 | 717 | */ |
| 718 | 718 | #define REL_RESERVED 0x0a |
| 719 | −#define REL_WHEEL_HI_RES 0x0b | |
| 720 | 719 | #define REL_MAX 0x0f |
| 721 | 720 | #define REL_CNT (REL_MAX+1) |
| 722 | 721 | |
| @@ -753,15 +752,6 @@ · 30 unmodified lines | ||
| 753 | 752 | |
| 754 | 753 | #define ABS_MISC 0x28 |
| 755 | 754 | |
| 756 | −/* | |
| 757 | − * 0x2e is reserved and should not be used in input drivers. | |
| 758 | − * It was used by HID as ABS_MISC+6 and userspace needs to detect if | |
| 759 | − * the next ABS_* event is correct or is just ABS_MISC + n. | |
| 760 | − * We define here ABS_RESERVED so userspace can rely on it and detect | |
| 761 | − * the situation described above. | |
| 762 | − */ | |
| 763 | −#define ABS_RESERVED 0x2e | |
| 764 | − | |
| 765 | 755 | #define ABS_MT_SLOT 0x2f /* MT slot being modified */ |
| 766 | 756 | #define ABS_MT_TOUCH_MAJOR 0x30 /* Major axis of touching ellipse */ |
| 767 | 757 | #define ABS_MT_TOUCH_MINOR 0x31 /* Minor axis (omit if circular) */ |
| @@ -83,11 +83,11 @@ struct kfd_ioctl_set_cu_mask_args { · 82 unmodified lines | ||
| 83 | 83 | }; |
| 84 | 84 | |
| 85 | 85 | struct kfd_ioctl_get_queue_wave_state_args { |
| 86 | − uint64_t ctl_stack_address; /* to KFD */ | |
| 87 | − uint32_t ctl_stack_used_size; /* from KFD */ | |
| 88 | − uint32_t save_area_used_size; /* from KFD */ | |
| 89 | − uint32_t queue_id; /* to KFD */ | |
| 90 | − uint32_t pad; | |
| 86 | + __u64 ctl_stack_address; /* to KFD */ | |
| 87 | + __u32 ctl_stack_used_size; /* from KFD */ | |
| 88 | + __u32 save_area_used_size; /* from KFD */ | |
| 89 | + __u32 queue_id; /* to KFD */ | |
| 90 | + __u32 pad; | |
| 91 | 91 | }; |
| 92 | 92 | |
| 93 | 93 | /* For kfd_ioctl_set_memory_policy_args.default_policy and alternate_policy */ |
| @@ -255,10 +255,10 @@ struct kfd_hsa_memory_exception_data { · 161 unmodified lines | ||
| 255 | 255 | |
| 256 | 256 | /* hw exception data */ |
| 257 | 257 | struct kfd_hsa_hw_exception_data { |
| 258 | − uint32_t reset_type; | |
| 259 | − uint32_t reset_cause; | |
| 260 | − uint32_t memory_lost; | |
| 261 | − uint32_t gpu_id; | |
| 258 | + __u32 reset_type; | |
| 259 | + __u32 reset_cause; | |
| 260 | + __u32 memory_lost; | |
| 261 | + __u32 gpu_id; | |
| 262 | 262 | }; |
| 263 | 263 | |
| 264 | 264 | /* Event data */ |
| @@ -1635,8 +1635,8 @@ enum nft_ng_attributes { · 1634 unmodified lines | ||
| 1635 | 1635 | NFTA_NG_MODULUS, |
| 1636 | 1636 | NFTA_NG_TYPE, |
| 1637 | 1637 | NFTA_NG_OFFSET, |
| 1638 | − NFTA_NG_SET_NAME, | |
| 1639 | − NFTA_NG_SET_ID, | |
| 1638 | + NFTA_NG_SET_NAME, /* deprecated */ | |
| 1639 | + NFTA_NG_SET_ID, /* deprecated */ | |
| 1640 | 1640 | __NFTA_NG_MAX |
| 1641 | 1641 | }; |
| 1642 | 1642 | #define NFTA_NG_MAX (__NFTA_NG_MAX - 1) |
| @@ -11,6 +11,10 @@ · 10 unmodified lines | ||
| 11 | 11 | #include <linux/if_vlan.h> |
| 12 | 12 | #include <linux/if_pppox.h> |
| 13 | 13 | |
| 14 | +#ifndef __KERNEL__ | |
| 15 | +#include <limits.h> /* for INT_MIN, INT_MAX */ | |
| 16 | +#endif | |
| 17 | + | |
| 14 | 18 | /* Bridge Hooks */ |
| 15 | 19 | /* After promisc drops, checksum checks. */ |
| 16 | 20 | #define NF_BR_PRE_ROUTING 0 |
| @@ -212,6 +212,7 @@ struct prctl_mm_map { · 211 unmodified lines | ||
| 212 | 212 | #define PR_SET_SPECULATION_CTRL 53 |
| 213 | 213 | /* Speculation control variants */ |
| 214 | 214 | # define PR_SPEC_STORE_BYPASS 0 |
| 215 | +# define PR_SPEC_INDIRECT_BRANCH 1 | |
| 215 | 216 | /* Return and control values for PR_SET/GET_SPECULATION_CTRL */ |
| 216 | 217 | # define PR_SPEC_NOT_AFFECTED 0 |
| 217 | 218 | # define PR_SPEC_PRCTL (1UL << 0) |
| @@ -568,6 +568,8 @@ struct sctp_assoc_reset_event { · 567 unmodified lines | ||
| 568 | 568 | |
| 569 | 569 | #define SCTP_ASSOC_CHANGE_DENIED 0x0004 |
| 570 | 570 | #define SCTP_ASSOC_CHANGE_FAILED 0x0008 |
| 571 | +#define SCTP_STREAM_CHANGE_DENIED SCTP_ASSOC_CHANGE_DENIED | |
| 572 | +#define SCTP_STREAM_CHANGE_FAILED SCTP_ASSOC_CHANGE_FAILED | |
| 571 | 573 | struct sctp_stream_change_event { |
| 572 | 574 | __u16 strchange_type; |
| 573 | 575 | __u16 strchange_flags; |
| @@ -1151,6 +1153,7 @@ struct sctp_add_streams { · 577 unmodified lines | ||
| 1151 | 1153 | /* SCTP Stream schedulers */ |
| 1152 | 1154 | enum sctp_sched_type { |
| 1153 | 1155 | SCTP_SS_FCFS, |
| 1156 | + SCTP_SS_DEFAULT = SCTP_SS_FCFS, | |
| 1154 | 1157 | SCTP_SS_PRIO, |
| 1155 | 1158 | SCTP_SS_RR, |
| 1156 | 1159 | SCTP_SS_MAX = SCTP_SS_RR |
| @@ -50,6 +50,8 @@ · 49 unmodified lines | ||
| 50 | 50 | #ifndef __LINUX_V4L2_CONTROLS_H |
| 51 | 51 | #define __LINUX_V4L2_CONTROLS_H |
| 52 | 52 | |
| 53 | +#include <linux/types.h> | |
| 54 | + | |
| 53 | 55 | /* Control classes */ |
| 54 | 56 | #define V4L2_CTRL_CLASS_USER 0x00980000 /* Old-style 'user' controls */ |
| 55 | 57 | #define V4L2_CTRL_CLASS_MPEG 0x00990000 /* MPEG-compression controls */ |
| @@ -1110,6 +1112,7 @@ struct v4l2_mpeg2_sequence { · 1054 unmodified lines | ||
| 1110 | 1112 | __u8 profile_and_level_indication; |
| 1111 | 1113 | __u8 progressive_sequence; |
| 1112 | 1114 | __u8 chroma_format; |
| 1115 | + __u8 pad; | |
| 1113 | 1116 | }; |
| 1114 | 1117 | |
| 1115 | 1118 | struct v4l2_mpeg2_picture { |
| @@ -1128,6 +1131,7 @@ struct v4l2_mpeg2_picture { · 12 unmodified lines | ||
| 1128 | 1131 | __u8 alternate_scan; |
| 1129 | 1132 | __u8 repeat_first_field; |
| 1130 | 1133 | __u8 progressive_frame; |
| 1134 | + __u8 pad; | |
| 1131 | 1135 | }; |
| 1132 | 1136 | |
| 1133 | 1137 | struct v4l2_ctrl_mpeg2_slice_params { |
| @@ -1142,6 +1146,7 @@ struct v4l2_ctrl_mpeg2_slice_params { · 8 unmodified lines | ||
| 1142 | 1146 | |
| 1143 | 1147 | __u8 backward_ref_index; |
| 1144 | 1148 | __u8 forward_ref_index; |
| 1149 | + __u8 pad; | |
| 1145 | 1150 | }; |
| 1146 | 1151 | |
| 1147 | 1152 | struct v4l2_ctrl_mpeg2_quantization { |