Linux 5.7-rc6 Conflict in drivers/net/ethernet/mellanox/mlx5/core/steering/dr_send.c resolved by deleting dr_cq_event, matching how netdev resolved it. Required for dependencies in the following patches.
Showing the changes to include/uapi (14 of 1441 files). Show all
Unified · Split
| @@ -346,6 +346,10 @@ struct drm_amdgpu_gem_userptr { · 345 unmodified lines | ||
| 346 | 346 | #define AMDGPU_TILING_DCC_PITCH_MAX_MASK 0x3FFF |
| 347 | 347 | #define AMDGPU_TILING_DCC_INDEPENDENT_64B_SHIFT 43 |
| 348 | 348 | #define AMDGPU_TILING_DCC_INDEPENDENT_64B_MASK 0x1 |
| 349 | +#define AMDGPU_TILING_DCC_INDEPENDENT_128B_SHIFT 44 | |
| 350 | +#define AMDGPU_TILING_DCC_INDEPENDENT_128B_MASK 0x1 | |
| 351 | +#define AMDGPU_TILING_SCANOUT_SHIFT 63 | |
| 352 | +#define AMDGPU_TILING_SCANOUT_MASK 0x1 | |
| 349 | 353 | |
| 350 | 354 | /* Set/Get helpers for tiling flags. */ |
| 351 | 355 | #define AMDGPU_TILING_SET(field, value) \ |
| @@ -73,7 +73,7 @@ struct bpf_insn { · 72 unmodified lines | ||
| 73 | 73 | /* Key of an a BPF_MAP_TYPE_LPM_TRIE entry */ |
| 74 | 74 | struct bpf_lpm_trie_key { |
| 75 | 75 | __u32 prefixlen; /* up to 32 for AF_INET, 128 for AF_INET6 */ |
| 76 | − __u8 data[]; /* Arbitrary size */ | |
| 76 | + __u8 data[0]; /* Arbitrary size */ | |
| 77 | 77 | }; |
| 78 | 78 | |
| 79 | 79 | struct bpf_cgroup_storage_key { |
| @@ -1642,7 +1642,7 @@ union bpf_attr { · 1562 unmodified lines | ||
| 1642 | 1642 | * ifindex, but doesn't require a map to do so. |
| 1643 | 1643 | * Return |
| 1644 | 1644 | * **XDP_REDIRECT** on success, or the value of the two lower bits |
| 1645 | − * of the **flags* argument on error. | |
| 1645 | + * of the *flags* argument on error. | |
| 1646 | 1646 | * |
| 1647 | 1647 | * int bpf_sk_redirect_map(struct sk_buff *skb, struct bpf_map *map, u32 key, u64 flags) |
| 1648 | 1648 | * Description |
| @@ -36,12 +36,10 @@ struct btrfs_ioctl_vol_args { · 35 unmodified lines | ||
| 36 | 36 | #define BTRFS_DEVICE_PATH_NAME_MAX 1024 |
| 37 | 37 | #define BTRFS_SUBVOL_NAME_MAX 4039 |
| 38 | 38 | |
| 39 | −/* | |
| 40 | − * Deprecated since 5.7: | |
| 41 | − * | |
| 42 | − * BTRFS_SUBVOL_CREATE_ASYNC (1ULL << 0) | |
| 43 | − */ | |
| 44 | − | |
| 39 | +#ifndef __KERNEL__ | |
| 40 | +/* Deprecated since 5.7 */ | |
| 41 | +# define BTRFS_SUBVOL_CREATE_ASYNC (1ULL << 0) | |
| 42 | +#endif | |
| 45 | 43 | #define BTRFS_SUBVOL_RDONLY (1ULL << 1) |
| 46 | 44 | #define BTRFS_SUBVOL_QGROUP_INHERIT (1ULL << 2) |
| 47 | 45 | |
| @@ -39,6 +39,12 @@ struct dma_buf_sync { · 38 unmodified lines | ||
| 39 | 39 | |
| 40 | 40 | #define DMA_BUF_BASE 'b' |
| 41 | 41 | #define DMA_BUF_IOCTL_SYNC _IOW(DMA_BUF_BASE, 0, struct dma_buf_sync) |
| 42 | + | |
| 43 | +/* 32/64bitness of this uapi was botched in android, there's no difference | |
| 44 | + * between them in actual uapi, they're just different numbers. | |
| 45 | + */ | |
| 42 | 46 | #define DMA_BUF_SET_NAME _IOW(DMA_BUF_BASE, 1, const char *) |
| 47 | +#define DMA_BUF_SET_NAME_A _IOW(DMA_BUF_BASE, 1, u32) | |
| 48 | +#define DMA_BUF_SET_NAME_B _IOW(DMA_BUF_BASE, 1, u64) | |
| 43 | 49 | |
| 44 | 50 | #endif |
| @@ -119,8 +119,8 @@ enum hv_fcopy_op { · 118 unmodified lines | ||
| 119 | 119 | |
| 120 | 120 | struct hv_fcopy_hdr { |
| 121 | 121 | __u32 operation; |
| 122 | − uuid_le service_id0; /* currently unused */ | |
| 123 | − uuid_le service_id1; /* currently unused */ | |
| 122 | + __u8 service_id0[16]; /* currently unused */ | |
| 123 | + __u8 service_id1[16]; /* currently unused */ | |
| 124 | 124 | } __attribute__((packed)); |
| 125 | 125 | |
| 126 | 126 | #define OVER_WRITE 0x1 |
| @@ -60,7 +60,7 @@ struct arc_rfc1201 { · 59 unmodified lines | ||
| 60 | 60 | __u8 proto; /* protocol ID field - varies */ |
| 61 | 61 | __u8 split_flag; /* for use with split packets */ |
| 62 | 62 | __be16 sequence; /* sequence number */ |
| 63 | − __u8 payload[]; /* space remaining in packet (504 bytes)*/ | |
| 63 | + __u8 payload[0]; /* space remaining in packet (504 bytes)*/ | |
| 64 | 64 | }; |
| 65 | 65 | #define RFC1201_HDR_SIZE 4 |
| 66 | 66 | |
| @@ -69,7 +69,7 @@ struct arc_rfc1201 { · 2 unmodified lines | ||
| 69 | 69 | */ |
| 70 | 70 | struct arc_rfc1051 { |
| 71 | 71 | __u8 proto; /* ARC_P_RFC1051_ARP/RFC1051_IP */ |
| 72 | − __u8 payload[]; /* 507 bytes */ | |
| 72 | + __u8 payload[0]; /* 507 bytes */ | |
| 73 | 73 | }; |
| 74 | 74 | #define RFC1051_HDR_SIZE 1 |
| 75 | 75 | |
| @@ -80,7 +80,7 @@ struct arc_rfc1051 { · 4 unmodified lines | ||
| 80 | 80 | struct arc_eth_encap { |
| 81 | 81 | __u8 proto; /* Always ARC_P_ETHER */ |
| 82 | 82 | struct ethhdr eth; /* standard ethernet header (yuck!) */ |
| 83 | − __u8 payload[]; /* 493 bytes */ | |
| 83 | + __u8 payload[0]; /* 493 bytes */ | |
| 84 | 84 | }; |
| 85 | 85 | #define ETH_ENCAP_HDR_SIZE 14 |
| 86 | 86 | |
| @@ -57,7 +57,7 @@ struct mmc_ioc_cmd { · 56 unmodified lines | ||
| 57 | 57 | */ |
| 58 | 58 | struct mmc_ioc_multi_cmd { |
| 59 | 59 | __u64 num_of_cmds; |
| 60 | − struct mmc_ioc_cmd cmds[]; | |
| 60 | + struct mmc_ioc_cmd cmds[0]; | |
| 61 | 61 | }; |
| 62 | 62 | |
| 63 | 63 | #define MMC_IOC_CMD _IOWR(MMC_BLOCK_MAJOR, 0, struct mmc_ioc_cmd) |
| @@ -29,12 +29,12 @@ struct net_dm_config_entry { · 28 unmodified lines | ||
| 29 | 29 | |
| 30 | 30 | struct net_dm_config_msg { |
| 31 | 31 | __u32 entries; |
| 32 | − struct net_dm_config_entry options[]; | |
| 32 | + struct net_dm_config_entry options[0]; | |
| 33 | 33 | }; |
| 34 | 34 | |
| 35 | 35 | struct net_dm_alert_msg { |
| 36 | 36 | __u32 entries; |
| 37 | − struct net_dm_drop_point points[]; | |
| 37 | + struct net_dm_drop_point points[0]; | |
| 38 | 38 | }; |
| 39 | 39 | |
| 40 | 40 | struct net_dm_user_msg { |
| @@ -276,6 +276,7 @@ enum nft_rule_compat_attributes { · 275 unmodified lines | ||
| 276 | 276 | * @NFT_SET_TIMEOUT: set uses timeouts |
| 277 | 277 | * @NFT_SET_EVAL: set can be updated from the evaluation path |
| 278 | 278 | * @NFT_SET_OBJECT: set contains stateful objects |
| 279 | + * @NFT_SET_CONCAT: set contains a concatenation | |
| 279 | 280 | */ |
| 280 | 281 | enum nft_set_flags { |
| 281 | 282 | NFT_SET_ANONYMOUS = 0x1, |
| @@ -285,6 +286,7 @@ enum nft_set_flags { · 3 unmodified lines | ||
| 285 | 286 | NFT_SET_TIMEOUT = 0x10, |
| 286 | 287 | NFT_SET_EVAL = 0x20, |
| 287 | 288 | NFT_SET_OBJECT = 0x40, |
| 289 | + NFT_SET_CONCAT = 0x80, | |
| 288 | 290 | }; |
| 289 | 291 | |
| 290 | 292 | /** |
| @@ -48,6 +48,7 @@ struct idletimer_tg_info_v1 { · 47 unmodified lines | ||
| 48 | 48 | |
| 49 | 49 | char label[MAX_IDLETIMER_LABEL_SIZE]; |
| 50 | 50 | |
| 51 | + __u8 send_nl_msg; /* unused: for compatibility with Android */ | |
| 51 | 52 | __u8 timer_type; |
| 52 | 53 | |
| 53 | 54 | /* for kernel module internal use only */ |
| @@ -40,7 +40,7 @@ struct ebt_mac_wormhash_tuple { · 39 unmodified lines | ||
| 40 | 40 | struct ebt_mac_wormhash { |
| 41 | 41 | int table[257]; |
| 42 | 42 | int poolsize; |
| 43 | − struct ebt_mac_wormhash_tuple pool[]; | |
| 43 | + struct ebt_mac_wormhash_tuple pool[0]; | |
| 44 | 44 | }; |
| 45 | 45 | |
| 46 | 46 | #define ebt_mac_wormhash_size(x) ((x) ? sizeof(struct ebt_mac_wormhash) \ |
| @@ -93,6 +93,64 @@ struct usb_raw_ep_io { · 92 unmodified lines | ||
| 93 | 93 | __u8 data[0]; |
| 94 | 94 | }; |
| 95 | 95 | |
| 96 | +/* Maximum number of non-control endpoints in struct usb_raw_eps_info. */ | |
| 97 | +#define USB_RAW_EPS_NUM_MAX 30 | |
| 98 | + | |
| 99 | +/* Maximum length of UDC endpoint name in struct usb_raw_ep_info. */ | |
| 100 | +#define USB_RAW_EP_NAME_MAX 16 | |
| 101 | + | |
| 102 | +/* Used as addr in struct usb_raw_ep_info if endpoint accepts any address. */ | |
| 103 | +#define USB_RAW_EP_ADDR_ANY 0xff | |
| 104 | + | |
| 105 | +/* | |
| 106 | + * struct usb_raw_ep_caps - exposes endpoint capabilities from struct usb_ep | |
| 107 | + * (technically from its member struct usb_ep_caps). | |
| 108 | + */ | |
| 109 | +struct usb_raw_ep_caps { | |
| 110 | + __u32 type_control : 1; | |
| 111 | + __u32 type_iso : 1; | |
| 112 | + __u32 type_bulk : 1; | |
| 113 | + __u32 type_int : 1; | |
| 114 | + __u32 dir_in : 1; | |
| 115 | + __u32 dir_out : 1; | |
| 116 | +}; | |
| 117 | + | |
| 118 | +/* | |
| 119 | + * struct usb_raw_ep_limits - exposes endpoint limits from struct usb_ep. | |
| 120 | + * @maxpacket_limit: Maximum packet size value supported by this endpoint. | |
| 121 | + * @max_streams: maximum number of streams supported by this endpoint | |
| 122 | + * (actual number is 2^n). | |
| 123 | + * @reserved: Empty, reserved for potential future extensions. | |
| 124 | + */ | |
| 125 | +struct usb_raw_ep_limits { | |
| 126 | + __u16 maxpacket_limit; | |
| 127 | + __u16 max_streams; | |
| 128 | + __u32 reserved; | |
| 129 | +}; | |
| 130 | + | |
| 131 | +/* | |
| 132 | + * struct usb_raw_ep_info - stores information about a gadget endpoint. | |
| 133 | + * @name: Name of the endpoint as it is defined in the UDC driver. | |
| 134 | + * @addr: Address of the endpoint that must be specified in the endpoint | |
| 135 | + * descriptor passed to USB_RAW_IOCTL_EP_ENABLE ioctl. | |
| 136 | + * @caps: Endpoint capabilities. | |
| 137 | + * @limits: Endpoint limits. | |
| 138 | + */ | |
| 139 | +struct usb_raw_ep_info { | |
| 140 | + __u8 name[USB_RAW_EP_NAME_MAX]; | |
| 141 | + __u32 addr; | |
| 142 | + struct usb_raw_ep_caps caps; | |
| 143 | + struct usb_raw_ep_limits limits; | |
| 144 | +}; | |
| 145 | + | |
| 146 | +/* | |
| 147 | + * struct usb_raw_eps_info - argument for USB_RAW_IOCTL_EPS_INFO ioctl. | |
| 148 | + * eps: Structures that store information about non-control endpoints. | |
| 149 | + */ | |
| 150 | +struct usb_raw_eps_info { | |
| 151 | + struct usb_raw_ep_info eps[USB_RAW_EPS_NUM_MAX]; | |
| 152 | +}; | |
| 153 | + | |
| 96 | 154 | /* |
| 97 | 155 | * Initializes a Raw Gadget instance. |
| 98 | 156 | * Accepts a pointer to the usb_raw_init struct as an argument. |
| @@ -115,37 +173,38 @@ struct usb_raw_ep_io { · 16 unmodified lines | ||
| 115 | 173 | #define USB_RAW_IOCTL_EVENT_FETCH _IOR('U', 2, struct usb_raw_event) |
| 116 | 174 | |
| 117 | 175 | /* |
| 118 | − * Queues an IN (OUT for READ) urb as a response to the last control request | |
| 119 | − * received on endpoint 0, provided that was an IN (OUT for READ) request and | |
| 120 | − * waits until the urb is completed. Copies received data to user for READ. | |
| 176 | + * Queues an IN (OUT for READ) request as a response to the last setup request | |
| 177 | + * received on endpoint 0 (provided that was an IN (OUT for READ) request), and | |
| 178 | + * waits until the request is completed. Copies received data to user for READ. | |
| 121 | 179 | * Accepts a pointer to the usb_raw_ep_io struct as an argument. |
| 122 | − * Returns length of trasferred data on success or negative error code on | |
| 180 | + * Returns length of transferred data on success or negative error code on | |
| 123 | 181 | * failure. |
| 124 | 182 | */ |
| 125 | 183 | #define USB_RAW_IOCTL_EP0_WRITE _IOW('U', 3, struct usb_raw_ep_io) |
| 126 | 184 | #define USB_RAW_IOCTL_EP0_READ _IOWR('U', 4, struct usb_raw_ep_io) |
| 127 | 185 | |
| 128 | 186 | /* |
| 129 | − * Finds an endpoint that supports the transfer type specified in the | |
| 130 | − * descriptor and enables it. | |
| 131 | − * Accepts a pointer to the usb_endpoint_descriptor struct as an argument. | |
| 187 | + * Finds an endpoint that satisfies the parameters specified in the provided | |
| 188 | + * descriptors (address, transfer type, etc.) and enables it. | |
| 189 | + * Accepts a pointer to the usb_raw_ep_descs struct as an argument. | |
| 132 | 190 | * Returns enabled endpoint handle on success or negative error code on failure. |
| 133 | 191 | */ |
| 134 | 192 | #define USB_RAW_IOCTL_EP_ENABLE _IOW('U', 5, struct usb_endpoint_descriptor) |
| 135 | 193 | |
| 136 | −/* Disables specified endpoint. | |
| 194 | +/* | |
| 195 | + * Disables specified endpoint. | |
| 137 | 196 | * Accepts endpoint handle as an argument. |
| 138 | 197 | * Returns 0 on success or negative error code on failure. |
| 139 | 198 | */ |
| 140 | 199 | #define USB_RAW_IOCTL_EP_DISABLE _IOW('U', 6, __u32) |
| 141 | 200 | |
| 142 | 201 | /* |
| 143 | − * Queues an IN (OUT for READ) urb as a response to the last control request | |
| 144 | − * received on endpoint usb_raw_ep_io.ep, provided that was an IN (OUT for READ) | |
| 145 | − * request and waits until the urb is completed. Copies received data to user | |
| 146 | − * for READ. | |
| 202 | + * Queues an IN (OUT for READ) request as a response to the last setup request | |
| 203 | + * received on endpoint usb_raw_ep_io.ep (provided that was an IN (OUT for READ) | |
| 204 | + * request), and waits until the request is completed. Copies received data to | |
| 205 | + * user for READ. | |
| 147 | 206 | * Accepts a pointer to the usb_raw_ep_io struct as an argument. |
| 148 | − * Returns length of trasferred data on success or negative error code on | |
| 207 | + * Returns length of transferred data on success or negative error code on | |
| 149 | 208 | * failure. |
| 150 | 209 | */ |
| 151 | 210 | #define USB_RAW_IOCTL_EP_WRITE _IOW('U', 7, struct usb_raw_ep_io) |
| @@ -164,4 +223,27 @@ struct usb_raw_ep_io { · 12 unmodified lines | ||
| 164 | 223 | */ |
| 165 | 224 | #define USB_RAW_IOCTL_VBUS_DRAW _IOW('U', 10, __u32) |
| 166 | 225 | |
| 226 | +/* | |
| 227 | + * Fills in the usb_raw_eps_info structure with information about non-control | |
| 228 | + * endpoints available for the currently connected UDC. | |
| 229 | + * Returns the number of available endpoints on success or negative error code | |
| 230 | + * on failure. | |
| 231 | + */ | |
| 232 | +#define USB_RAW_IOCTL_EPS_INFO _IOR('U', 11, struct usb_raw_eps_info) | |
| 233 | + | |
| 234 | +/* | |
| 235 | + * Stalls a pending control request on endpoint 0. | |
| 236 | + * Returns 0 on success or negative error code on failure. | |
| 237 | + */ | |
| 238 | +#define USB_RAW_IOCTL_EP0_STALL _IO('U', 12) | |
| 239 | + | |
| 240 | +/* | |
| 241 | + * Sets or clears halt or wedge status of the endpoint. | |
| 242 | + * Accepts endpoint handle as an argument. | |
| 243 | + * Returns 0 on success or negative error code on failure. | |
| 244 | + */ | |
| 245 | +#define USB_RAW_IOCTL_EP_SET_HALT _IOW('U', 13, __u32) | |
| 246 | +#define USB_RAW_IOCTL_EP_CLEAR_HALT _IOW('U', 14, __u32) | |
| 247 | +#define USB_RAW_IOCTL_EP_SET_WEDGE _IOW('U', 15, __u32) | |
| 248 | + | |
| 167 | 249 | #endif /* _UAPI__LINUX_USB_RAW_GADGET_H */ |
| @@ -48,8 +48,15 @@ struct virtio_balloon_config { · 47 unmodified lines | ||
| 48 | 48 | __u32 num_pages; |
| 49 | 49 | /* Number of pages we've actually got in balloon. */ |
| 50 | 50 | __u32 actual; |
| 51 | − /* Free page report command id, readonly by guest */ | |
| 52 | − __u32 free_page_report_cmd_id; | |
| 51 | + /* | |
| 52 | + * Free page hint command id, readonly by guest. | |
| 53 | + * Was previously named free_page_report_cmd_id so we | |
| 54 | + * need to carry that name for legacy support. | |
| 55 | + */ | |
| 56 | + union { | |
| 57 | + __u32 free_page_hint_cmd_id; | |
| 58 | + __u32 free_page_report_cmd_id; /* deprecated */ | |
| 59 | + }; | |
| 53 | 60 | /* Stores PAGE_POISON if page poisoning is in use */ |
| 54 | 61 | __u32 poison_val; |
| 55 | 62 | }; |
| @@ -209,7 +209,7 @@ struct fc_bsg_host_vendor { · 208 unmodified lines | ||
| 209 | 209 | __u64 vendor_id; |
| 210 | 210 | |
| 211 | 211 | /* start of vendor command area */ |
| 212 | − __u32 vendor_cmd[]; | |
| 212 | + __u32 vendor_cmd[0]; | |
| 213 | 213 | }; |
| 214 | 214 | |
| 215 | 215 | /* Response: |