[v5,2/6] rcu: replace zero length array with flex array
Checks
Commit Message
Zero length arrays are GNU extension. Replace with
standard flex array.
Add a temporary suppression for rte_pipeline_table_entry
libabigail bug:
Bugzilla ID: https://sourceware.org/bugzilla/show_bug.cgi?id=31377
Signed-off-by: Tyler Retzlaff <roretzla@linux.microsoft.com>
Reviewed-by: Honnappa Nagarahalli <honnappa.nagarahalli@arm.com>
Reviewed-by: Morten Brørup <mb@smartsharesystems.com>
Acked-by: Chengwen Feng <fengchengwen@huawei.com>
Acked-by: Stephen Hemminger <stephen@networkplumber.org>
---
devtools/libabigail.abignore | 3 +++
lib/rcu/rcu_qsbr_pvt.h | 2 +-
lib/rcu/rte_rcu_qsbr.h | 2 +-
3 files changed, 5 insertions(+), 2 deletions(-)
@@ -35,5 +35,8 @@
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
[suppress_type]
+ name = rte_rcu_qsbr
+
+[suppress_type]
name = rte_eth_fp_ops
has_data_member_inserted_between = {offset_of(reserved2), end}
@@ -52,7 +52,7 @@ struct rte_rcu_qsbr_dq {
*/
typedef struct {
uint64_t token; /**< Token */
- uint8_t elem[0]; /**< Pointer to user element */
+ uint8_t elem[]; /**< Pointer to user element */
} __attribute__((__may_alias__)) __rte_rcu_qsbr_dq_elem_t;
#endif /* _RTE_RCU_QSBR_PVT_H_ */
@@ -107,7 +107,7 @@ struct __rte_cache_aligned rte_rcu_qsbr {
uint32_t max_threads;
/**< Maximum number of threads using this QS variable */
- alignas(RTE_CACHE_LINE_SIZE) struct rte_rcu_qsbr_cnt qsbr_cnt[0];
+ alignas(RTE_CACHE_LINE_SIZE) struct rte_rcu_qsbr_cnt qsbr_cnt[];
/**< Quiescent state counter array of 'max_threads' elements */
/**< Registered thread IDs are stored in a bitmap array,