Linux kernel mirror (for testing) git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git
kernel os linux
1
fork

Configure Feed

Select the types of activity you want to include in your feed.

Merge tag 'flexible-array-conversions-5.10-rc2' of git://git.kernel.org/pub/scm/linux/kernel/git/gustavoars/linux

Pull more flexible-array member conversions from Gustavo A. R. Silva:
"Replace zero-length arrays with flexible-array members"

* tag 'flexible-array-conversions-5.10-rc2' of git://git.kernel.org/pub/scm/linux/kernel/git/gustavoars/linux:
printk: ringbuffer: Replace zero-length array with flexible-array member
net/smc: Replace zero-length array with flexible-array member
net/mlx5: Replace zero-length array with flexible-array member
mei: hw: Replace zero-length array with flexible-array member
gve: Replace zero-length array with flexible-array member
Bluetooth: btintel: Replace zero-length array with flexible-array member
scsi: target: tcmu: Replace zero-length array with flexible-array member
ima: Replace zero-length array with flexible-array member
enetc: Replace zero-length array with flexible-array member
fs: Replace zero-length array with flexible-array member
Bluetooth: Replace zero-length array with flexible-array member
params: Replace zero-length array with flexible-array member
tracepoint: Replace zero-length array with flexible-array member
platform/chrome: cros_ec_proto: Replace zero-length array with flexible-array member
platform/chrome: cros_ec_commands: Replace zero-length array with flexible-array member
mailbox: zynqmp-ipi-message: Replace zero-length array with flexible-array member
dmaengine: ti-cppi5: Replace zero-length array with flexible-array member

+40 -40
+1 -1
drivers/bluetooth/btintel.h
··· 47 47 struct intel_tlv { 48 48 u8 type; 49 49 u8 len; 50 - u8 val[0]; 50 + u8 val[]; 51 51 } __packed; 52 52 53 53 struct intel_version_tlv {
+3 -3
drivers/misc/mei/hw.h
··· 224 224 u8 type; 225 225 u8 length; 226 226 u8 ext_payload[2]; 227 - u8 hdr[0]; 227 + u8 hdr[]; 228 228 }; 229 229 230 230 /** ··· 238 238 u8 count; 239 239 u8 size; 240 240 u8 reserved[2]; 241 - struct mei_ext_hdr hdrs[0]; 241 + struct mei_ext_hdr hdrs[]; 242 242 }; 243 243 244 244 /* ··· 308 308 u32 dma_ring:1; 309 309 u32 internal:1; 310 310 u32 msg_complete:1; 311 - u32 extension[0]; 311 + u32 extension[]; 312 312 } __packed; 313 313 314 314 /* The length is up to 9 bits */
+1 -1
drivers/net/ethernet/freescale/enetc/enetc_qos.c
··· 402 402 u32 num_entries; 403 403 refcount_t refcount; 404 404 struct hlist_node node; 405 - struct action_gate_entry entries[0]; 405 + struct action_gate_entry entries[]; 406 406 }; 407 407 408 408 /* Only enable the green color frame now
+1 -1
drivers/net/ethernet/google/gve/gve_adminq.h
··· 198 198 199 199 struct gve_stats_report { 200 200 __be64 written_count; 201 - struct stats stats[0]; 201 + struct stats stats[]; 202 202 }; 203 203 204 204 static_assert(sizeof(struct gve_stats_report) == 8);
+2 -3
drivers/net/ethernet/google/gve/gve_main.c
··· 116 116 priv->tx_cfg.num_queues; 117 117 rx_stats_num = (GVE_RX_STATS_REPORT_NUM + NIC_RX_STATS_REPORT_NUM) * 118 118 priv->rx_cfg.num_queues; 119 - priv->stats_report_len = sizeof(struct gve_stats_report) + 120 - (tx_stats_num + rx_stats_num) * 121 - sizeof(struct stats); 119 + priv->stats_report_len = struct_size(priv->stats_report, stats, 120 + tx_stats_num + rx_stats_num); 122 121 priv->stats_report = 123 122 dma_alloc_coherent(&priv->pdev->dev, priv->stats_report_len, 124 123 &priv->stats_report_bus, GFP_KERNEL);
+1 -1
drivers/target/target_core_user.c
··· 194 194 195 195 uint8_t tmr_type; 196 196 uint32_t tmr_cmd_cnt; 197 - int16_t tmr_cmd_ids[0]; 197 + int16_t tmr_cmd_ids[]; 198 198 }; 199 199 200 200 /*
+1 -1
fs/binfmt_elf.c
··· 1690 1690 struct elf_thread_core_info *next; 1691 1691 struct task_struct *task; 1692 1692 struct elf_prstatus prstatus; 1693 - struct memelfnote notes[0]; 1693 + struct memelfnote notes[]; 1694 1694 }; 1695 1695 1696 1696 struct elf_note_info {
+1 -1
fs/hfs/btree.h
··· 60 60 wait_queue_head_t lock_wq; 61 61 atomic_t refcnt; 62 62 unsigned int page_offset; 63 - struct page *page[0]; 63 + struct page *page[]; 64 64 }; 65 65 66 66 #define HFS_BNODE_ERROR 0
+1 -1
fs/hfsplus/hfsplus_fs.h
··· 117 117 wait_queue_head_t lock_wq; 118 118 atomic_t refcnt; 119 119 unsigned int page_offset; 120 - struct page *page[0]; 120 + struct page *page[]; 121 121 }; 122 122 123 123 #define HFS_BNODE_LOCK 0
+4 -4
fs/isofs/rock.h
··· 22 22 __u8 len_des; 23 23 __u8 len_src; 24 24 __u8 ext_ver; 25 - __u8 data[0]; 25 + __u8 data[]; 26 26 } __attribute__ ((packed)); 27 27 28 28 struct RR_RR_s { ··· 44 44 struct SL_component { 45 45 __u8 flags; 46 46 __u8 len; 47 - __u8 text[0]; 47 + __u8 text[]; 48 48 } __attribute__ ((packed)); 49 49 50 50 struct RR_SL_s { ··· 54 54 55 55 struct RR_NM_s { 56 56 __u8 flags; 57 - char name[0]; 57 + char name[]; 58 58 } __attribute__ ((packed)); 59 59 60 60 struct RR_CL_s { ··· 71 71 72 72 struct RR_TF_s { 73 73 __u8 flags; 74 - struct stamp times[0]; /* Variable number of these beasts */ 74 + struct stamp times[]; /* Variable number of these beasts */ 75 75 } __attribute__ ((packed)); 76 76 77 77 /* Linux-specific extension for transparent decompression */
+2 -2
fs/select.c
··· 97 97 struct poll_table_page { 98 98 struct poll_table_page * next; 99 99 struct poll_table_entry * entry; 100 - struct poll_table_entry entries[0]; 100 + struct poll_table_entry entries[]; 101 101 }; 102 102 103 103 #define POLL_TABLE_FULL(table) \ ··· 836 836 struct poll_list { 837 837 struct poll_list *next; 838 838 int len; 839 - struct pollfd entries[0]; 839 + struct pollfd entries[]; 840 840 }; 841 841 842 842 #define POLLFD_PER_PAGE ((PAGE_SIZE-sizeof(struct poll_list)) / sizeof(struct pollfd))
+2 -2
include/linux/dma/ti-cppi5.h
··· 47 47 u32 buf_info1; 48 48 u32 org_buf_len; 49 49 u64 org_buf_ptr; 50 - u32 epib[0]; 50 + u32 epib[]; 51 51 } __packed; 52 52 53 53 #define CPPI5_DESC_MIN_ALIGN (16U) ··· 139 139 */ 140 140 struct cppi5_monolithic_desc_t { 141 141 struct cppi5_desc_hdr_t hdr; 142 - u32 epib[0]; 142 + u32 epib[]; 143 143 }; 144 144 145 145 #define CPPI5_INFO2_MDESC_DATA_OFFSET_SHIFT (18U)
+1 -1
include/linux/fs.h
··· 3285 3285 */ 3286 3286 struct simple_transaction_argresp { 3287 3287 ssize_t size; 3288 - char data[0]; 3288 + char data[]; 3289 3289 }; 3290 3290 3291 3291 #define SIMPLE_TRANSACTION_LIMIT (PAGE_SIZE - sizeof(struct simple_transaction_argresp))
+1 -1
include/linux/mailbox/zynqmp-ipi-message.h
··· 14 14 */ 15 15 struct zynqmp_ipi_message { 16 16 size_t len; 17 - u8 data[0]; 17 + u8 data[]; 18 18 }; 19 19 20 20 #endif /* _LINUX_ZYNQMP_IPI_MESSAGE_H_ */
+2 -2
include/linux/mlx5/mlx5_ifc.h
··· 5823 5823 u8 reserved_at_68[0x10]; 5824 5824 u8 num_of_actions[0x8]; 5825 5825 5826 - union mlx5_ifc_set_add_copy_action_in_auto_bits actions[0]; 5826 + union mlx5_ifc_set_add_copy_action_in_auto_bits actions[]; 5827 5827 }; 5828 5828 5829 5829 struct mlx5_ifc_dealloc_modify_header_context_out_bits { ··· 9761 9761 9762 9762 u8 reserved_at_60[0x20]; 9763 9763 9764 - u8 data[0][0x20]; 9764 + u8 data[][0x20]; 9765 9765 }; 9766 9766 9767 9767 enum {
+7 -7
include/linux/platform_data/cros_ec_commands.h
··· 1419 1419 uint16_t num_banks_total; 1420 1420 /* Number of banks described in banks array. */ 1421 1421 uint16_t num_banks_desc; 1422 - struct ec_flash_bank banks[0]; 1422 + struct ec_flash_bank banks[]; 1423 1423 } __ec_align4; 1424 1424 1425 1425 /* ··· 2420 2420 /* Total amount of vector lost */ 2421 2421 uint16_t total_lost; 2422 2422 /* Lost events since the last fifo_info, per sensors */ 2423 - uint16_t lost[0]; 2423 + uint16_t lost[]; 2424 2424 } __ec_todo_packed; 2425 2425 2426 2426 struct ec_response_motion_sense_fifo_data { 2427 2427 uint32_t number_data; 2428 - struct ec_response_motion_sensor_data data[0]; 2428 + struct ec_response_motion_sensor_data data[]; 2429 2429 } __ec_todo_packed; 2430 2430 2431 2431 /* List supported activity recognition */ ··· 3093 3093 uint8_t algorithm; 3094 3094 uint8_t num_params; 3095 3095 uint8_t reserved[2]; 3096 - float val[0]; 3096 + float val[]; 3097 3097 } __ec_align4; 3098 3098 3099 3099 struct ec_params_tmp006_set_calibration_v1 { ··· 3101 3101 uint8_t algorithm; 3102 3102 uint8_t num_params; 3103 3103 uint8_t reserved; 3104 - float val[0]; 3104 + float val[]; 3105 3105 } __ec_align4; 3106 3106 3107 3107 ··· 5076 5076 uint8_t type; /* event type : see PD_EVENT_xx below */ 5077 5077 uint8_t size_port; /* [7:5] port number [4:0] payload size in bytes */ 5078 5078 uint16_t data; /* type-defined data payload */ 5079 - uint8_t payload[0]; /* optional additional data payload: 0..16 bytes */ 5079 + uint8_t payload[]; /* optional additional data payload: 0..16 bytes */ 5080 5080 } __ec_align4; 5081 5081 5082 5082 /* The timestamp is the microsecond counter shifted to get about a ms. */ ··· 5789 5789 5790 5790 struct ec_response_tp_frame_info { 5791 5791 uint32_t n_frames; 5792 - uint32_t frame_sizes[0]; 5792 + uint32_t frame_sizes[]; 5793 5793 } __ec_align4; 5794 5794 5795 5795 /* Create a snapshot of current frame readings */
+1 -1
include/linux/platform_data/cros_ec_proto.h
··· 69 69 uint32_t outsize; 70 70 uint32_t insize; 71 71 uint32_t result; 72 - uint8_t data[0]; 72 + uint8_t data[]; 73 73 }; 74 74 75 75 /**
+1 -1
kernel/params.c
··· 530 530 { 531 531 unsigned int num; 532 532 struct attribute_group grp; 533 - struct param_attribute attrs[0]; 533 + struct param_attribute attrs[]; 534 534 }; 535 535 536 536 #ifdef CONFIG_SYSFS
+1 -1
kernel/printk/printk_ringbuffer.c
··· 345 345 */ 346 346 struct prb_data_block { 347 347 unsigned long id; 348 - char data[0]; 348 + char data[]; 349 349 }; 350 350 351 351 /*
+1 -1
kernel/tracepoint.c
··· 50 50 */ 51 51 struct tp_probes { 52 52 struct rcu_head rcu; 53 - struct tracepoint_func probes[0]; 53 + struct tracepoint_func probes[]; 54 54 }; 55 55 56 56 static inline void *allocate_probes(int count)
+2 -1
net/bluetooth/msft.c
··· 12 12 struct msft_cp_read_supported_features { 13 13 __u8 sub_opcode; 14 14 } __packed; 15 + 15 16 struct msft_rp_read_supported_features { 16 17 __u8 status; 17 18 __u8 sub_opcode; 18 19 __le64 features; 19 20 __u8 evt_prefix_len; 20 - __u8 evt_prefix[0]; 21 + __u8 evt_prefix[]; 21 22 } __packed; 22 23 23 24 struct msft_data {
+2 -2
net/smc/smc_clc.h
··· 124 124 struct smc_clnt_opts_area_hdr hdr; 125 125 u8 roce[16]; /* RoCEv2 GID */ 126 126 u8 reserved[16]; 127 - u8 user_eids[0][SMC_MAX_EID_LEN]; 127 + u8 user_eids[][SMC_MAX_EID_LEN]; 128 128 }; 129 129 130 130 struct smc_clc_msg_proposal_prefix { /* prefix part of clc proposal message*/ ··· 143 143 struct smc_clc_smcd_v2_extension { 144 144 u8 system_eid[SMC_MAX_EID_LEN]; 145 145 u8 reserved[16]; 146 - struct smc_clc_smcd_gid_chid gidchid[0]; 146 + struct smc_clc_smcd_gid_chid gidchid[]; 147 147 }; 148 148 149 149 struct smc_clc_msg_proposal { /* clc proposal message sent by Linux */
+1 -1
security/integrity/ima/ima.h
··· 101 101 struct tpm_digest *digests; 102 102 struct ima_template_desc *template_desc; /* template descriptor */ 103 103 u32 template_data_len; 104 - struct ima_field_data template_data[0]; /* template related data */ 104 + struct ima_field_data template_data[]; /* template related data */ 105 105 }; 106 106 107 107 struct ima_queue_entry {