Commit 67f852ef authored by Linus Torvalds's avatar Linus Torvalds

Merge tag 'flexible-array-member-5.7-rc5' of...

Merge tag 'flexible-array-member-5.7-rc5' of git://git.kernel.org/pub/scm/linux/kernel/git/gustavoars/linux

Pull flex-array reverts from Gustavo Silva:
 "This reverts flexible array changes in include/uapi/

  These structures can get embedded in other structures in user-space
  and cause all sorts of warnings and problems[1]. So, we better don't
  take any chances and keep the zero-length arrays in place for now"

[1] https://lore.kernel.org/lkml/20200424121553.GE26002@ziepe.ca/

* tag 'flexible-array-member-5.7-rc5' of git://git.kernel.org/pub/scm/linux/kernel/git/gustavoars/linux:
  uapi: revert flexible-array conversions
parents 9d82973e 1e6e9d0f
...@@ -73,7 +73,7 @@ struct bpf_insn { ...@@ -73,7 +73,7 @@ struct bpf_insn {
/* Key of an a BPF_MAP_TYPE_LPM_TRIE entry */ /* Key of an a BPF_MAP_TYPE_LPM_TRIE entry */
struct bpf_lpm_trie_key { struct bpf_lpm_trie_key {
__u32 prefixlen; /* up to 32 for AF_INET, 128 for AF_INET6 */ __u32 prefixlen; /* up to 32 for AF_INET, 128 for AF_INET6 */
__u8 data[]; /* Arbitrary size */ __u8 data[0]; /* Arbitrary size */
}; };
struct bpf_cgroup_storage_key { struct bpf_cgroup_storage_key {
......
...@@ -45,13 +45,13 @@ struct dlm_lock_params { ...@@ -45,13 +45,13 @@ struct dlm_lock_params {
void __user *bastaddr; void __user *bastaddr;
struct dlm_lksb __user *lksb; struct dlm_lksb __user *lksb;
char lvb[DLM_USER_LVB_LEN]; char lvb[DLM_USER_LVB_LEN];
char name[]; char name[0];
}; };
struct dlm_lspace_params { struct dlm_lspace_params {
__u32 flags; __u32 flags;
__u32 minor; __u32 minor;
char name[]; char name[0];
}; };
struct dlm_purge_params { struct dlm_purge_params {
......
...@@ -34,7 +34,7 @@ struct fiemap { ...@@ -34,7 +34,7 @@ struct fiemap {
__u32 fm_mapped_extents;/* number of extents that were mapped (out) */ __u32 fm_mapped_extents;/* number of extents that were mapped (out) */
__u32 fm_extent_count; /* size of fm_extents array (in) */ __u32 fm_extent_count; /* size of fm_extents array (in) */
__u32 fm_reserved; __u32 fm_reserved;
struct fiemap_extent fm_extents[]; /* array of mapped extents (out) */ struct fiemap_extent fm_extents[0]; /* array of mapped extents (out) */
}; };
#define FIEMAP_MAX_OFFSET (~0ULL) #define FIEMAP_MAX_OFFSET (~0ULL)
......
...@@ -60,7 +60,7 @@ struct arc_rfc1201 { ...@@ -60,7 +60,7 @@ struct arc_rfc1201 {
__u8 proto; /* protocol ID field - varies */ __u8 proto; /* protocol ID field - varies */
__u8 split_flag; /* for use with split packets */ __u8 split_flag; /* for use with split packets */
__be16 sequence; /* sequence number */ __be16 sequence; /* sequence number */
__u8 payload[]; /* space remaining in packet (504 bytes)*/ __u8 payload[0]; /* space remaining in packet (504 bytes)*/
}; };
#define RFC1201_HDR_SIZE 4 #define RFC1201_HDR_SIZE 4
...@@ -69,7 +69,7 @@ struct arc_rfc1201 { ...@@ -69,7 +69,7 @@ struct arc_rfc1201 {
*/ */
struct arc_rfc1051 { struct arc_rfc1051 {
__u8 proto; /* ARC_P_RFC1051_ARP/RFC1051_IP */ __u8 proto; /* ARC_P_RFC1051_ARP/RFC1051_IP */
__u8 payload[]; /* 507 bytes */ __u8 payload[0]; /* 507 bytes */
}; };
#define RFC1051_HDR_SIZE 1 #define RFC1051_HDR_SIZE 1
...@@ -80,7 +80,7 @@ struct arc_rfc1051 { ...@@ -80,7 +80,7 @@ struct arc_rfc1051 {
struct arc_eth_encap { struct arc_eth_encap {
__u8 proto; /* Always ARC_P_ETHER */ __u8 proto; /* Always ARC_P_ETHER */
struct ethhdr eth; /* standard ethernet header (yuck!) */ struct ethhdr eth; /* standard ethernet header (yuck!) */
__u8 payload[]; /* 493 bytes */ __u8 payload[0]; /* 493 bytes */
}; };
#define ETH_ENCAP_HDR_SIZE 14 #define ETH_ENCAP_HDR_SIZE 14
......
...@@ -57,7 +57,7 @@ struct mmc_ioc_cmd { ...@@ -57,7 +57,7 @@ struct mmc_ioc_cmd {
*/ */
struct mmc_ioc_multi_cmd { struct mmc_ioc_multi_cmd {
__u64 num_of_cmds; __u64 num_of_cmds;
struct mmc_ioc_cmd cmds[]; struct mmc_ioc_cmd cmds[0];
}; };
#define MMC_IOC_CMD _IOWR(MMC_BLOCK_MAJOR, 0, struct mmc_ioc_cmd) #define MMC_IOC_CMD _IOWR(MMC_BLOCK_MAJOR, 0, struct mmc_ioc_cmd)
......
...@@ -29,12 +29,12 @@ struct net_dm_config_entry { ...@@ -29,12 +29,12 @@ struct net_dm_config_entry {
struct net_dm_config_msg { struct net_dm_config_msg {
__u32 entries; __u32 entries;
struct net_dm_config_entry options[]; struct net_dm_config_entry options[0];
}; };
struct net_dm_alert_msg { struct net_dm_alert_msg {
__u32 entries; __u32 entries;
struct net_dm_drop_point points[]; struct net_dm_drop_point points[0];
}; };
struct net_dm_user_msg { struct net_dm_user_msg {
......
...@@ -40,7 +40,7 @@ struct ebt_mac_wormhash_tuple { ...@@ -40,7 +40,7 @@ struct ebt_mac_wormhash_tuple {
struct ebt_mac_wormhash { struct ebt_mac_wormhash {
int table[257]; int table[257];
int poolsize; int poolsize;
struct ebt_mac_wormhash_tuple pool[]; struct ebt_mac_wormhash_tuple pool[0];
}; };
#define ebt_mac_wormhash_size(x) ((x) ? sizeof(struct ebt_mac_wormhash) \ #define ebt_mac_wormhash_size(x) ((x) ? sizeof(struct ebt_mac_wormhash) \
......
...@@ -209,7 +209,7 @@ struct fc_bsg_host_vendor { ...@@ -209,7 +209,7 @@ struct fc_bsg_host_vendor {
__u64 vendor_id; __u64 vendor_id;
/* start of vendor command area */ /* start of vendor command area */
__u32 vendor_cmd[]; __u32 vendor_cmd[0];
}; };
/* Response: /* Response:
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment