Patch Detail
get:
Show a patch.
patch:
Update a patch.
put:
Update a patch.
GET /api/patches/112298/?format=api
http://patches.dpdk.org/api/patches/112298/?format=api", "web_url": "http://patches.dpdk.org/project/dpdk/patch/20220603111625.562070-3-bruce.richardson@intel.com/", "project": { "id": 1, "url": "http://patches.dpdk.org/api/projects/1/?format=api", "name": "DPDK", "link_name": "dpdk", "list_id": "dev.dpdk.org", "list_email": "dev@dpdk.org", "web_url": "http://core.dpdk.org", "scm_url": "git://dpdk.org/dpdk", "webscm_url": "http://git.dpdk.org/dpdk", "list_archive_url": "https://inbox.dpdk.org/dev", "list_archive_url_format": "https://inbox.dpdk.org/dev/{}", "commit_url_format": "" }, "msgid": "<20220603111625.562070-3-bruce.richardson@intel.com>", "list_archive_url": "https://inbox.dpdk.org/dev/20220603111625.562070-3-bruce.richardson@intel.com", "date": "2022-06-03T11:16:23", "name": "[v4,2/4] drivers: replace zero-length arrays with undimensioned ones", "commit_ref": null, "pull_url": null, "state": "accepted", "archived": true, "hash": "c9b95a24127b0ac1a372aaa6763fdc4d4d4e7fa1", "submitter": { "id": 20, "url": "http://patches.dpdk.org/api/people/20/?format=api", "name": "Bruce Richardson", "email": "bruce.richardson@intel.com" }, "delegate": { "id": 24651, "url": "http://patches.dpdk.org/api/users/24651/?format=api", "username": "dmarchand", "first_name": "David", "last_name": "Marchand", "email": "david.marchand@redhat.com" }, "mbox": "http://patches.dpdk.org/project/dpdk/patch/20220603111625.562070-3-bruce.richardson@intel.com/mbox/", "series": [ { "id": 23318, "url": "http://patches.dpdk.org/api/series/23318/?format=api", "web_url": "http://patches.dpdk.org/project/dpdk/list/?series=23318", "date": "2022-06-03T11:16:22", "name": "clean up zero-length arrays", "version": 4, "mbox": "http://patches.dpdk.org/series/23318/mbox/" } ], "comments": "http://patches.dpdk.org/api/patches/112298/comments/", "check": "success", "checks": "http://patches.dpdk.org/api/patches/112298/checks/", "tags": {}, "related": [], "headers": { "Return-Path": "<dev-bounces@dpdk.org>", "X-Original-To": "patchwork@inbox.dpdk.org", "Delivered-To": "patchwork@inbox.dpdk.org", "Received": [ "from mails.dpdk.org (mails.dpdk.org [217.70.189.124])\n\tby inbox.dpdk.org (Postfix) with ESMTP id 23EEAA055C;\n\tFri, 3 Jun 2022 13:16:46 +0200 (CEST)", "from [217.70.189.124] (localhost [127.0.0.1])\n\tby mails.dpdk.org (Postfix) with ESMTP id 0340F42B91;\n\tFri, 3 Jun 2022 13:16:37 +0200 (CEST)", "from mga04.intel.com (mga04.intel.com [192.55.52.120])\n by mails.dpdk.org (Postfix) with ESMTP id 20C2642B8E\n for <dev@dpdk.org>; Fri, 3 Jun 2022 13:16:35 +0200 (CEST)", "from orsmga008.jf.intel.com ([10.7.209.65])\n by fmsmga104.fm.intel.com with ESMTP/TLS/ECDHE-RSA-AES256-GCM-SHA384;\n 03 Jun 2022 04:16:35 -0700", "from silpixa00401385.ir.intel.com (HELO\n silpixa00401385.ger.corp.intel.com) ([10.237.222.171])\n by orsmga008.jf.intel.com with ESMTP; 03 Jun 2022 04:16:33 -0700" ], "DKIM-Signature": "v=1; a=rsa-sha256; c=relaxed/simple;\n d=intel.com; i=@intel.com; q=dns/txt; s=Intel;\n t=1654254996; x=1685790996;\n h=from:to:cc:subject:date:message-id:in-reply-to:\n references:mime-version:content-transfer-encoding;\n bh=i0PtvumldAwpvVrHwcqbZKtO9rWSKFuA+TrRKCYQxPE=;\n b=N6lBs+dsY95ud+VGaKChoftOqhNnzINfwpQjDE0/9+9ZgydZQXJ6JP+9\n 7QiIlRzMBVxTUPb4xH+3fYYp3OpR0P8KbdReHwtQtFP4KJLbmyTAUX3Wa\n n3J5QD3o+Ycho3TyEkZ0TYdLmeoIIU4UpESJ+uf65EjNQcPnEpWKNy3TK\n ozsKNlDm8cov5gNv92G0Gw5soHTwKq4SQ4gBxeMUv+Hz+MI82NXtnZOTD\n T1qvYdgdiXHVdOF07K4VO35juf1tp6tQiI00/6ysAIJ0OGU8WzXXMsY2H\n xEGsbgepQ8X932JGriT2ES6QJpTjUYRQjVwrwrI95NuvPlXVvabpfddGz A==;", "X-IronPort-AV": [ "E=McAfee;i=\"6400,9594,10366\"; a=\"275031094\"", "E=Sophos;i=\"5.91,274,1647327600\"; d=\"scan'208\";a=\"275031094\"", "E=Sophos;i=\"5.91,274,1647327600\"; d=\"scan'208\";a=\"607356412\"" ], "X-ExtLoop1": "1", "From": "Bruce Richardson <bruce.richardson@intel.com>", "To": "dev@dpdk.org", "Cc": "david.marchand@redhat.com, Bruce Richardson <bruce.richardson@intel.com>,\n\t=?utf-8?q?Morten_Br=C3=B8rup?= <mb@smartsharesystems.com>,\n Stephen Hemminger <stephen@networkplumber.org>,\n Hemant Agrawal <hemant.agrawal@nxp.com>", "Subject": "[PATCH v4 2/4] drivers: replace zero-length arrays with undimensioned\n ones", "Date": "Fri, 3 Jun 2022 12:16:23 +0100", "Message-Id": "<20220603111625.562070-3-bruce.richardson@intel.com>", "X-Mailer": "git-send-email 2.34.1", "In-Reply-To": "<20220603111625.562070-1-bruce.richardson@intel.com>", "References": "<20220602150834.643745-1-bruce.richardson@intel.com>\n <20220603111625.562070-1-bruce.richardson@intel.com>", "MIME-Version": "1.0", "Content-Type": "text/plain; charset=UTF-8", "Content-Transfer-Encoding": "8bit", "X-BeenThere": "dev@dpdk.org", "X-Mailman-Version": "2.1.29", "Precedence": "list", "List-Id": "DPDK patches and discussions <dev.dpdk.org>", "List-Unsubscribe": "<https://mails.dpdk.org/options/dev>,\n <mailto:dev-request@dpdk.org?subject=unsubscribe>", "List-Archive": "<http://mails.dpdk.org/archives/dev/>", "List-Post": "<mailto:dev@dpdk.org>", "List-Help": "<mailto:dev-request@dpdk.org?subject=help>", "List-Subscribe": "<https://mails.dpdk.org/listinfo/dev>,\n <mailto:dev-request@dpdk.org?subject=subscribe>", "Errors-To": "dev-bounces@dpdk.org" }, "content": "This patch replaces instances of zero-sized arrays i.e. those at the end\nof structures with \"[0]\" with the more standard syntax of \"[]\".\nReplacement was done using coccinelle script, with some cleanup of\nwhitespace afterwards.\n\nSigned-off-by: Bruce Richardson <bruce.richardson@intel.com>\nAcked-by: Morten Brørup <mb@smartsharesystems.com>\nAcked-by: Stephen Hemminger <stephen@networkplumber.org>\nAcked-by: Hemant Agrawal <hemant.agrawal@nxp.com>\n---\n drivers/bus/dpaa/include/netcfg.h | 4 ++--\n drivers/bus/vmbus/rte_vmbus_reg.h | 4 ++--\n drivers/common/cnxk/roc_se.h | 2 +-\n drivers/common/dpaax/dpaax_iova_table.h | 2 +-\n drivers/common/mlx5/mlx5_prm.h | 10 +++++-----\n drivers/crypto/ipsec_mb/ipsec_mb_private.h | 4 ++--\n drivers/crypto/virtio/virtio_ring.h | 4 ++--\n drivers/crypto/virtio/virtqueue.h | 2 +-\n drivers/net/atlantic/hw_atl/hw_atl_utils.h | 2 +-\n drivers/net/cxgbe/clip_tbl.h | 2 +-\n drivers/net/cxgbe/l2t.h | 2 +-\n drivers/net/cxgbe/mps_tcam.h | 2 +-\n drivers/net/cxgbe/smt.h | 2 +-\n drivers/net/enic/base/vnic_devcmd.h | 2 +-\n drivers/net/hinic/hinic_pmd_tx.h | 2 +-\n drivers/net/nfp/nfpcore/nfp_nsp.h | 2 +-\n drivers/net/virtio/virtio_ring.h | 4 ++--\n drivers/net/virtio/virtio_user/vhost_kernel.c | 2 +-\n drivers/net/virtio/virtio_user/vhost_vdpa.c | 2 +-\n drivers/net/virtio/virtqueue.h | 2 +-\n drivers/regex/mlx5/mlx5_rxp.h | 4 ++--\n 21 files changed, 31 insertions(+), 31 deletions(-)", "diff": "diff --git a/drivers/bus/dpaa/include/netcfg.h b/drivers/bus/dpaa/include/netcfg.h\nindex bb18a34e3d..43c7e1cfe1 100644\n--- a/drivers/bus/dpaa/include/netcfg.h\n+++ b/drivers/bus/dpaa/include/netcfg.h\n@@ -23,7 +23,7 @@ struct fm_eth_port_cfg {\n struct netcfg_info {\n \tuint8_t num_ethports;\n \t/**< Number of ports */\n-\tstruct fm_eth_port_cfg port_cfg[0];\n+\tstruct fm_eth_port_cfg port_cfg[];\n \t/**< Variable structure array of size num_ethports */\n };\n \n@@ -38,7 +38,7 @@ struct interface_info {\n struct netcfg_interface {\n \tuint8_t numof_netcfg_interface;\n \tuint8_t numof_fman_enabled_macless;\n-\tstruct interface_info interface_info[0];\n+\tstruct interface_info interface_info[];\n };\n \n /* pcd_file: FMC netpcd XML (\"policy\") file, that contains PCD information.\ndiff --git a/drivers/bus/vmbus/rte_vmbus_reg.h b/drivers/bus/vmbus/rte_vmbus_reg.h\nindex 8562672979..a17ce40763 100644\n--- a/drivers/bus/vmbus/rte_vmbus_reg.h\n+++ b/drivers/bus/vmbus/rte_vmbus_reg.h\n@@ -107,7 +107,7 @@ struct vmbus_bufring {\n \t * Ring data starts here + RingDataStartOffset\n \t * !!! DO NOT place any fields below this !!!\n \t */\n-\tuint8_t data[0];\n+\tuint8_t data[];\n } __rte_packed;\n \n /*\n@@ -140,7 +140,7 @@ vmbus_chanpkt_getlen(uint16_t pktlen)\n struct vmbus_gpa_range {\n \tuint32_t len;\n \tuint32_t ofs;\n-\tuint64_t page[0];\n+\tuint64_t page[];\n } __rte_packed;\n \n /* This is actually vmbus_gpa_range.gpa_page[1] */\ndiff --git a/drivers/common/cnxk/roc_se.h b/drivers/common/cnxk/roc_se.h\nindex 145a1825bd..a1d476a86d 100644\n--- a/drivers/common/cnxk/roc_se.h\n+++ b/drivers/common/cnxk/roc_se.h\n@@ -246,7 +246,7 @@ struct roc_se_buf_ptr {\n /* IOV Pointer */\n struct roc_se_iov_ptr {\n \tint buf_cnt;\n-\tstruct roc_se_buf_ptr bufs[0];\n+\tstruct roc_se_buf_ptr bufs[];\n };\n \n struct roc_se_fc_params {\ndiff --git a/drivers/common/dpaax/dpaax_iova_table.h b/drivers/common/dpaax/dpaax_iova_table.h\nindex b1f2300c52..9a18eafca0 100644\n--- a/drivers/common/dpaax/dpaax_iova_table.h\n+++ b/drivers/common/dpaax/dpaax_iova_table.h\n@@ -32,7 +32,7 @@ struct dpaax_iovat_element {\n \n struct dpaax_iova_table {\n \tunsigned int count; /**< No. of blocks of contiguous physical pages */\n-\tstruct dpaax_iovat_element entries[0];\n+\tstruct dpaax_iovat_element entries[];\n };\n \n /* Pointer to the table, which is common for DPAA/DPAA2 and only a single\ndiff --git a/drivers/common/mlx5/mlx5_prm.h b/drivers/common/mlx5/mlx5_prm.h\nindex bc3e70a1d1..654e5f44ee 100644\n--- a/drivers/common/mlx5/mlx5_prm.h\n+++ b/drivers/common/mlx5/mlx5_prm.h\n@@ -560,7 +560,7 @@ struct mlx5_umr_wqe {\n struct mlx5_rdma_write_wqe {\n \tstruct mlx5_wqe_cseg ctr;\n \tstruct mlx5_wqe_rseg rseg;\n-\tstruct mlx5_wqe_dseg dseg[0];\n+\tstruct mlx5_wqe_dseg dseg[];\n } __rte_packed;\n \n #ifdef PEDANTIC\n@@ -3479,7 +3479,7 @@ struct mlx5_ifc_qpc_pas_list_bits {\n #endif\n struct mlx5_ifc_qpc_extension_and_pas_list_bits {\n \tstruct mlx5_ifc_qpc_extension_bits qpc_data_extension;\n-\tu8 pas[0][0x40];\n+\tu8 pas[][0x40];\n };\n \n \n@@ -3703,7 +3703,7 @@ struct mlx5_ifc_query_qp_out_bits {\n \tu8 reserved_at_a0[0x20];\n \tstruct mlx5_ifc_qpc_bits qpc;\n \tu8 reserved_at_800[0x80];\n-\tu8 pas[0][0x40];\n+\tu8 pas[][0x40];\n };\n #ifdef PEDANTIC\n #pragma GCC diagnostic error \"-Wpedantic\"\n@@ -3743,7 +3743,7 @@ struct mlx5_ifc_access_register_out_bits {\n \tu8 reserved_at_8[0x18];\n \tu8 syndrome[0x20];\n \tu8 reserved_at_40[0x40];\n-\tu8 register_data[0][0x20];\n+\tu8 register_data[][0x20];\n };\n \n struct mlx5_ifc_access_register_in_bits {\n@@ -3754,7 +3754,7 @@ struct mlx5_ifc_access_register_in_bits {\n \tu8 reserved_at_40[0x10];\n \tu8 register_id[0x10];\n \tu8 argument[0x20];\n-\tu8 register_data[0][0x20];\n+\tu8 register_data[][0x20];\n };\n #ifdef PEDANTIC\n #pragma GCC diagnostic error \"-Wpedantic\"\ndiff --git a/drivers/crypto/ipsec_mb/ipsec_mb_private.h b/drivers/crypto/ipsec_mb/ipsec_mb_private.h\nindex e53101acf1..e2c240dfc0 100644\n--- a/drivers/crypto/ipsec_mb/ipsec_mb_private.h\n+++ b/drivers/crypto/ipsec_mb/ipsec_mb_private.h\n@@ -120,7 +120,7 @@ struct ipsec_mb_dev_private {\n \t/**< PMD type */\n \tuint32_t max_nb_queue_pairs;\n \t/**< Max number of queue pairs supported by device */\n-\t__extension__ uint8_t priv[0];\n+\t__extension__ uint8_t priv[];\n };\n \n /** IPSEC Multi buffer queue pair common queue pair data for all PMDs */\n@@ -147,7 +147,7 @@ struct ipsec_mb_qp {\n \t/* Multi buffer manager */\n \tconst struct rte_memzone *mb_mgr_mz;\n \t/* Shared memzone for storing mb_mgr */\n-\t__extension__ uint8_t additional_data[0];\n+\t__extension__ uint8_t additional_data[];\n \t/**< Storing PMD specific additional data */\n };\n \ndiff --git a/drivers/crypto/virtio/virtio_ring.h b/drivers/crypto/virtio/virtio_ring.h\nindex ee30674566..55839279fd 100644\n--- a/drivers/crypto/virtio/virtio_ring.h\n+++ b/drivers/crypto/virtio/virtio_ring.h\n@@ -40,7 +40,7 @@ struct vring_desc {\n struct vring_avail {\n \tuint16_t flags;\n \tuint16_t idx;\n-\tuint16_t ring[0];\n+\tuint16_t ring[];\n };\n \n /* id is a 16bit index. uint32_t is used here for ids for padding reasons. */\n@@ -54,7 +54,7 @@ struct vring_used_elem {\n struct vring_used {\n \tuint16_t flags;\n \tvolatile uint16_t idx;\n-\tstruct vring_used_elem ring[0];\n+\tstruct vring_used_elem ring[];\n };\n \n struct vring {\ndiff --git a/drivers/crypto/virtio/virtqueue.h b/drivers/crypto/virtio/virtqueue.h\nindex c96ca62992..cb08bea94f 100644\n--- a/drivers/crypto/virtio/virtqueue.h\n+++ b/drivers/crypto/virtio/virtqueue.h\n@@ -88,7 +88,7 @@ struct virtqueue {\n \n \tuint16_t *notify_addr;\n \n-\tstruct vq_desc_extra vq_descx[0];\n+\tstruct vq_desc_extra vq_descx[];\n };\n \n /**\ndiff --git a/drivers/net/atlantic/hw_atl/hw_atl_utils.h b/drivers/net/atlantic/hw_atl/hw_atl_utils.h\nindex d8fab010cf..12ac9b041e 100644\n--- a/drivers/net/atlantic/hw_atl/hw_atl_utils.h\n+++ b/drivers/net/atlantic/hw_atl/hw_atl_utils.h\n@@ -334,7 +334,7 @@ struct offload_info {\n \tstruct offload_port_info ports;\n \tstruct offload_ka_info kas;\n \tstruct offload_rr_info rrs;\n-\tu8 buf[0];\n+\tu8 buf[];\n } __rte_packed;\n \n struct smbus_request {\ndiff --git a/drivers/net/cxgbe/clip_tbl.h b/drivers/net/cxgbe/clip_tbl.h\nindex d7689f4b7a..3b2be6645f 100644\n--- a/drivers/net/cxgbe/clip_tbl.h\n+++ b/drivers/net/cxgbe/clip_tbl.h\n@@ -20,7 +20,7 @@ struct clip_tbl {\n \tunsigned int clipt_start; /* start index of CLIP table */\n \tunsigned int clipt_size; /* size of CLIP table */\n \trte_rwlock_t lock; /* table rw lock */\n-\tstruct clip_entry cl_list[0]; /* MUST BE LAST */\n+\tstruct clip_entry cl_list[]; /* MUST BE LAST */\n };\n \n struct clip_tbl *t4_init_clip_tbl(unsigned int clipt_start,\ndiff --git a/drivers/net/cxgbe/l2t.h b/drivers/net/cxgbe/l2t.h\nindex 9845c9f981..e4c0ebedec 100644\n--- a/drivers/net/cxgbe/l2t.h\n+++ b/drivers/net/cxgbe/l2t.h\n@@ -37,7 +37,7 @@ struct l2t_data {\n \tunsigned int l2t_start; /* start index of our piece of the L2T */\n \tunsigned int l2t_size; /* number of entries in l2tab */\n \trte_rwlock_t lock; /* table rw lock */\n-\tstruct l2t_entry l2tab[0]; /* MUST BE LAST */\n+\tstruct l2t_entry l2tab[]; /* MUST BE LAST */\n };\n \n #define L2T_LPBK\ttrue\ndiff --git a/drivers/net/cxgbe/mps_tcam.h b/drivers/net/cxgbe/mps_tcam.h\nindex a359f52442..363786bd38 100644\n--- a/drivers/net/cxgbe/mps_tcam.h\n+++ b/drivers/net/cxgbe/mps_tcam.h\n@@ -41,7 +41,7 @@ struct mpstcam_table {\n \t\t\t * free_idx cannot alone determine\n \t\t\t * if the table is full\n \t\t\t */\n-\tstruct mps_tcam_entry entry[0];\n+\tstruct mps_tcam_entry entry[];\n };\n \n struct mpstcam_table *t4_init_mpstcam(struct adapter *adap);\ndiff --git a/drivers/net/cxgbe/smt.h b/drivers/net/cxgbe/smt.h\nindex a70e3a2085..531810e695 100644\n--- a/drivers/net/cxgbe/smt.h\n+++ b/drivers/net/cxgbe/smt.h\n@@ -31,7 +31,7 @@ struct smt_data {\n \tunsigned int smt_size;\n \tunsigned int smt_start;\n \trte_rwlock_t lock;\n-\tstruct smt_entry smtab[0];\n+\tstruct smt_entry smtab[];\n };\n \n struct smt_data *t4_init_smt(u32 smt_start_idx, u32 smt_size);\ndiff --git a/drivers/net/enic/base/vnic_devcmd.h b/drivers/net/enic/base/vnic_devcmd.h\nindex 3157bc8cb5..253a791c3f 100644\n--- a/drivers/net/enic/base/vnic_devcmd.h\n+++ b/drivers/net/enic/base/vnic_devcmd.h\n@@ -997,7 +997,7 @@ enum {\n struct filter_tlv {\n \tuint32_t type;\n \tuint32_t length;\n-\tuint32_t val[0];\n+\tuint32_t val[];\n };\n \n /* Data for CMD_ADD_FILTER is 2 TLV and filter + action structs */\ndiff --git a/drivers/net/hinic/hinic_pmd_tx.h b/drivers/net/hinic/hinic_pmd_tx.h\nindex a3ec6299fb..152f7abc53 100644\n--- a/drivers/net/hinic/hinic_pmd_tx.h\n+++ b/drivers/net/hinic/hinic_pmd_tx.h\n@@ -81,7 +81,7 @@ struct hinic_sq_wqe {\n \tstruct hinic_sq_task\t\ttask;\n \n \t/* sq sge section start address, 1~127 sges */\n-\tstruct hinic_sq_bufdesc buf_descs[0];\n+\tstruct hinic_sq_bufdesc buf_descs[];\n };\n \n struct hinic_txq_stats {\ndiff --git a/drivers/net/nfp/nfpcore/nfp_nsp.h b/drivers/net/nfp/nfpcore/nfp_nsp.h\nindex e74cdeb191..2184c15b4c 100644\n--- a/drivers/net/nfp/nfpcore/nfp_nsp.h\n+++ b/drivers/net/nfp/nfpcore/nfp_nsp.h\n@@ -224,7 +224,7 @@ struct nfp_eth_table {\n \t\tint is_split;\n \n \t\tunsigned int fec_modes_supported;\n-\t} ports[0];\n+\t} ports[];\n };\n \n struct nfp_eth_table *nfp_eth_read_ports(struct nfp_cpp *cpp);\ndiff --git a/drivers/net/virtio/virtio_ring.h b/drivers/net/virtio/virtio_ring.h\nindex 17a56b0a73..e848c0b73b 100644\n--- a/drivers/net/virtio/virtio_ring.h\n+++ b/drivers/net/virtio/virtio_ring.h\n@@ -46,7 +46,7 @@ struct vring_desc {\n struct vring_avail {\n \tuint16_t flags;\n \tuint16_t idx;\n-\tuint16_t ring[0];\n+\tuint16_t ring[];\n };\n \n /* id is a 16bit index. uint32_t is used here for ids for padding reasons. */\n@@ -60,7 +60,7 @@ struct vring_used_elem {\n struct vring_used {\n \tuint16_t flags;\n \tuint16_t idx;\n-\tstruct vring_used_elem ring[0];\n+\tstruct vring_used_elem ring[];\n };\n \n /* For support of packed virtqueues in Virtio 1.1 the format of descriptors\ndiff --git a/drivers/net/virtio/virtio_user/vhost_kernel.c b/drivers/net/virtio/virtio_user/vhost_kernel.c\nindex 986b56a7ca..1aed08b2bd 100644\n--- a/drivers/net/virtio/virtio_user/vhost_kernel.c\n+++ b/drivers/net/virtio/virtio_user/vhost_kernel.c\n@@ -22,7 +22,7 @@ struct vhost_kernel_data {\n struct vhost_memory_kernel {\n \tuint32_t nregions;\n \tuint32_t padding;\n-\tstruct vhost_memory_region regions[0];\n+\tstruct vhost_memory_region regions[];\n };\n \n /* vhost kernel ioctls */\ndiff --git a/drivers/net/virtio/virtio_user/vhost_vdpa.c b/drivers/net/virtio/virtio_user/vhost_vdpa.c\nindex 82f25a8674..bd13fe44b4 100644\n--- a/drivers/net/virtio/virtio_user/vhost_vdpa.c\n+++ b/drivers/net/virtio/virtio_user/vhost_vdpa.c\n@@ -70,7 +70,7 @@ struct vhost_iotlb_msg {\n struct vhost_vdpa_config {\n \tuint32_t off;\n \tuint32_t len;\n-\tuint8_t buf[0];\n+\tuint8_t buf[];\n };\n \n struct vhost_msg {\ndiff --git a/drivers/net/virtio/virtqueue.h b/drivers/net/virtio/virtqueue.h\nindex 99c68cf622..d100ed8762 100644\n--- a/drivers/net/virtio/virtqueue.h\n+++ b/drivers/net/virtio/virtqueue.h\n@@ -309,7 +309,7 @@ struct virtqueue {\n \n \tuint16_t *notify_addr;\n \tstruct rte_mbuf **sw_ring; /**< RX software ring. */\n-\tstruct vq_desc_extra vq_descx[0];\n+\tstruct vq_desc_extra vq_descx[];\n };\n \n /* If multiqueue is provided by host, then we support it. */\ndiff --git a/drivers/regex/mlx5/mlx5_rxp.h b/drivers/regex/mlx5/mlx5_rxp.h\nindex 315e3b4ca3..eddc577d79 100644\n--- a/drivers/regex/mlx5/mlx5_rxp.h\n+++ b/drivers/regex/mlx5/mlx5_rxp.h\n@@ -64,7 +64,7 @@ struct mlx5_rxp_match_tuple {\n \n struct mlx5_rxp_response {\n \tstruct mlx5_rxp_response_desc header;\n-\tstruct mlx5_rxp_match_tuple matches[0];\n+\tstruct mlx5_rxp_match_tuple matches[];\n };\n \n #define MLX5_RXP_MAX_MATCHES 254\n@@ -114,7 +114,7 @@ struct mlx5_rxp_rof {\n struct mlx5_rxp_ctl_rules_pgm {\n \tstruct mlx5_rxp_ctl_hdr hdr;\n \tuint32_t count;\n-\tstruct mlx5_rxp_rof_entry rules[0];\n+\tstruct mlx5_rxp_rof_entry rules[];\n } __rte_packed;\n \n /* RXP programming mode setting. */\n", "prefixes": [ "v4", "2/4" ] }{ "id": 112298, "url": "