From patchwork Mon Oct 28 09:09:04 2019 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Pavan Nikhilesh Bhagavatula X-Patchwork-Id: 62098 X-Patchwork-Delegate: david.marchand@redhat.com Return-Path: X-Original-To: patchwork@dpdk.org Delivered-To: patchwork@dpdk.org Received: from [92.243.14.124] (localhost [127.0.0.1]) by dpdk.org (Postfix) with ESMTP id 84C8B1BF06; Mon, 28 Oct 2019 10:09:17 +0100 (CET) Received: from mx0b-0016f401.pphosted.com (mx0a-0016f401.pphosted.com [67.231.148.174]) by dpdk.org (Postfix) with ESMTP id 83DBC1BEF9 for ; Mon, 28 Oct 2019 10:09:16 +0100 (CET) Received: from pps.filterd (m0045849.ppops.net [127.0.0.1]) by mx0a-0016f401.pphosted.com (8.16.0.42/8.16.0.42) with SMTP id x9S95Ym4010250; Mon, 28 Oct 2019 02:09:14 -0700 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=marvell.com; h=from : to : cc : subject : date : message-id : mime-version : content-transfer-encoding : content-type; s=pfpt0818; bh=OTv45Y0LDL9MzdZo80Q0MGUhfSZ6G8zNlLPXx6ZLAJQ=; b=ghaQOBDp2YEHJKntuFRi2r73fNeu3omHsd4JcLpWBXBazEV2h86tARCfLL2M4IrMH06w BhFKyW9rI4zQTsEEHmkrU/N0B0eh8Lt0JWtUn4tVXUZsZTqWyUwmZnz88Pd6a0PP2fO/ 3SkWDyzr5vmN58/eyRZEHJ9J1pSospeWoKvzR4Dlc6gOA/QkJtuPGVGwm6IibLHeMqU5 lOuNTw9Jc1F5615ZE8AvQXMxz8pSvEmvBKwfhkQhA57qAB5YD8H9vVXAwFkSIamnCVYW hB2DgWDuYUlPWrby0qI1JWHxv6wTjyhQjnKOP54shMCRTzBtFITl+eHLAQEG0jZuE6fN Tg== Received: from sc-exch03.marvell.com ([199.233.58.183]) by mx0a-0016f401.pphosted.com with ESMTP id 2vvkgq5cem-1 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-SHA384 bits=256 verify=NOT); Mon, 28 Oct 2019 02:09:14 -0700 Received: from SC-EXCH01.marvell.com (10.93.176.81) by SC-EXCH03.marvell.com (10.93.176.83) with Microsoft SMTP Server (TLS) id 15.0.1367.3; Mon, 28 Oct 2019 02:09:13 -0700 Received: from maili.marvell.com (10.93.176.43) by SC-EXCH01.marvell.com (10.93.176.81) with Microsoft SMTP Server id 15.0.1367.3 via Frontend Transport; Mon, 28 Oct 2019 02:09:12 -0700 Received: from BG-LT7430.marvell.com (unknown [10.28.17.14]) by maili.marvell.com (Postfix) with ESMTP id D28323F7041; Mon, 28 Oct 2019 02:09:08 -0700 (PDT) From: To: Wenzhuo Lu , Jingjing Wu , Bernard Iremonger , Olivier Matz , Bruce Richardson , Vladimir Medvedkin , Anatoly Burakov , Reshma Pattan , "Robert Sanford" , Erik Gabriel Carrillo CC: , Pavan Nikhilesh Date: Mon, 28 Oct 2019 14:39:04 +0530 Message-ID: <20191028090907.824-1-pbhagavatula@marvell.com> X-Mailer: git-send-email 2.17.1 MIME-Version: 1.0 X-Proofpoint-Virus-Version: vendor=fsecure engine=2.50.10434:6.0.95,1.0.8 definitions=2019-10-28_04:2019-10-25,2019-10-28 signatures=0 Subject: [dpdk-dev] [PATCH 1/3] app: use RTE_DIM to calculate array size X-BeenThere: dev@dpdk.org X-Mailman-Version: 2.1.15 Precedence: list List-Id: DPDK patches and discussions List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: dev-bounces@dpdk.org Sender: "dev" From: Pavan Nikhilesh Use RTE_DIM macro to calculate array size Suggested-by: David Marchand Signed-off-by: Pavan Nikhilesh --- app/test-pmd/cmdline.c | 2 +- app/test-pmd/icmpecho.c | 2 +- app/test-pmd/testpmd.c | 2 +- app/test/test.c | 2 +- app/test/test_cmdline_etheraddr.c | 10 +++------- app/test/test_cmdline_ipaddr.c | 18 ++++++------------ app/test/test_cmdline_num.c | 16 +++++----------- app/test/test_cmdline_portlist.c | 12 ++++-------- app/test/test_cmdline_string.c | 15 +++++---------- app/test/test_debug.c | 2 +- app/test/test_eal_flags.c | 9 ++++----- app/test/test_errno.c | 4 ++-- app/test/test_lpm.c | 2 +- app/test/test_lpm6.c | 2 +- app/test/test_lpm6_data.h | 3 +-- app/test/test_malloc.c | 2 +- app/test/test_memcpy.c | 2 +- app/test/test_memcpy_perf.c | 4 ++-- app/test/test_mp_secondary.c | 3 +-- app/test/test_pdump.c | 3 +-- app/test/test_pmd_ring_perf.c | 2 +- app/test/test_ring_perf.c | 6 +++--- app/test/test_timer_secondary.c | 3 +-- 23 files changed, 48 insertions(+), 78 deletions(-) -- 2.23.0 diff --git a/app/test-pmd/cmdline.c b/app/test-pmd/cmdline.c index 447806991..c6b4e44a2 100644 --- a/app/test-pmd/cmdline.c +++ b/app/test-pmd/cmdline.c @@ -5490,7 +5490,7 @@ cmd_show_bypass_config_parsed(void *parsed_result, "OS/board off", "power supply off", "timeout"}; - int num_events = (sizeof events) / (sizeof events[0]); + int num_events = RTE_DIM(events); /* Display the bypass mode.*/ if (rte_pmd_ixgbe_bypass_state_show(port_id, &bypass_mode) != 0) { diff --git a/app/test-pmd/icmpecho.c b/app/test-pmd/icmpecho.c index 2d359c943..65aece16c 100644 --- a/app/test-pmd/icmpecho.c +++ b/app/test-pmd/icmpecho.c @@ -188,7 +188,7 @@ ip_proto_name(uint16_t ip_proto) "PIM", /**< Protocol Independent Mcast */ }; - if (ip_proto < sizeof(ip_proto_names) / sizeof(ip_proto_names[0])) + if (ip_proto < RTE_DIM(ip_proto_names)) return ip_proto_names[ip_proto]; switch (ip_proto) { #ifdef IPPROTO_PGM diff --git a/app/test-pmd/testpmd.c b/app/test-pmd/testpmd.c index 38acbc58a..1103db629 100644 --- a/app/test-pmd/testpmd.c +++ b/app/test-pmd/testpmd.c @@ -2584,7 +2584,7 @@ struct pmd_test_command { cmd_func_t cmd_func; }; -#define PMD_TEST_CMD_NB (sizeof(pmd_test_menu) / sizeof(pmd_test_menu[0])) +#define PMD_TEST_CMD_NB RTE_DIM(pmd_test_menu) /* Check the link status of all ports in up to 9s, and print them finally */ static void diff --git a/app/test/test.c b/app/test/test.c index cd7aaf645..784535095 100644 --- a/app/test/test.c +++ b/app/test/test.c @@ -74,7 +74,7 @@ do_recursive_call(void) if (recursive_call == NULL) return -1; - for (i = 0; i < sizeof(actions)/sizeof(actions[0]); i++) { + for (i = 0; i < RTE_DIM(actions); i++) { if (strcmp(actions[i].env_var, recursive_call) == 0) return (actions[i].action_fn)(); } diff --git a/app/test/test_cmdline_etheraddr.c b/app/test/test_cmdline_etheraddr.c index 9a32fd7ec..dc7fa944b 100644 --- a/app/test/test_cmdline_etheraddr.c +++ b/app/test/test_cmdline_etheraddr.c @@ -72,13 +72,9 @@ const char * ether_addr_invalid_strs[] = { " ", }; -#define ETHERADDR_VALID_STRS_SIZE \ - (sizeof(ether_addr_valid_strs) / sizeof(ether_addr_valid_strs[0])) -#define ETHERADDR_GARBAGE_STRS_SIZE \ - (sizeof(ether_addr_garbage_strs) / sizeof(ether_addr_garbage_strs[0])) -#define ETHERADDR_INVALID_STRS_SIZE \ - (sizeof(ether_addr_invalid_strs) / sizeof(ether_addr_invalid_strs[0])) - +#define ETHERADDR_VALID_STRS_SIZE RTE_DIM(ether_addr_valid_strs) +#define ETHERADDR_GARBAGE_STRS_SIZE RTE_DIM(ether_addr_garbage_strs) +#define ETHERADDR_INVALID_STRS_SIZE RTE_DIM(ether_addr_invalid_strs) static int diff --git a/app/test/test_cmdline_ipaddr.c b/app/test/test_cmdline_ipaddr.c index 2d11ce936..0c90162e8 100644 --- a/app/test/test_cmdline_ipaddr.c +++ b/app/test/test_cmdline_ipaddr.c @@ -264,18 +264,12 @@ const char * ipaddr_invalid_strs[] = { " ", }; -#define IPADDR_VALID_STRS_SIZE \ - (sizeof(ipaddr_valid_strs) / sizeof(ipaddr_valid_strs[0])) -#define IPADDR_GARBAGE_ADDR4_STRS_SIZE \ - (sizeof(ipaddr_garbage_addr4_strs) / sizeof(ipaddr_garbage_addr4_strs[0])) -#define IPADDR_GARBAGE_ADDR6_STRS_SIZE \ - (sizeof(ipaddr_garbage_addr6_strs) / sizeof(ipaddr_garbage_addr6_strs[0])) -#define IPADDR_GARBAGE_NETWORK4_STRS_SIZE \ - (sizeof(ipaddr_garbage_network4_strs) / sizeof(ipaddr_garbage_network4_strs[0])) -#define IPADDR_GARBAGE_NETWORK6_STRS_SIZE \ - (sizeof(ipaddr_garbage_network6_strs) / sizeof(ipaddr_garbage_network6_strs[0])) -#define IPADDR_INVALID_STRS_SIZE \ - (sizeof(ipaddr_invalid_strs) / sizeof(ipaddr_invalid_strs[0])) +#define IPADDR_VALID_STRS_SIZE RTE_DIM(ipaddr_valid_strs) +#define IPADDR_GARBAGE_ADDR4_STRS_SIZE RTE_DIM(ipaddr_garbage_addr4_strs) +#define IPADDR_GARBAGE_ADDR6_STRS_SIZE RTE_DIM(ipaddr_garbage_addr6_strs) +#define IPADDR_GARBAGE_NETWORK4_STRS_SIZE RTE_DIM(ipaddr_garbage_network4_strs) +#define IPADDR_GARBAGE_NETWORK6_STRS_SIZE RTE_DIM(ipaddr_garbage_network6_strs) +#define IPADDR_INVALID_STRS_SIZE RTE_DIM(ipaddr_invalid_strs) static void dump_addr(cmdline_ipaddr_t addr) diff --git a/app/test/test_cmdline_num.c b/app/test/test_cmdline_num.c index 4c97caf3d..1daeaf840 100644 --- a/app/test/test_cmdline_num.c +++ b/app/test/test_cmdline_num.c @@ -216,17 +216,11 @@ const char * num_invalid_strs[] = { "\0", }; -#define NUM_POSITIVE_STRS_SIZE \ - (sizeof(num_valid_positive_strs) / sizeof(num_valid_positive_strs[0])) -#define NUM_NEGATIVE_STRS_SIZE \ - (sizeof(num_valid_negative_strs) / sizeof(num_valid_negative_strs[0])) -#define NUM_POSITIVE_GARBAGE_STRS_SIZE \ - (sizeof(num_garbage_positive_strs) / sizeof(num_garbage_positive_strs[0])) -#define NUM_NEGATIVE_GARBAGE_STRS_SIZE \ - (sizeof(num_garbage_negative_strs) / sizeof(num_garbage_negative_strs[0])) -#define NUM_INVALID_STRS_SIZE \ - (sizeof(num_invalid_strs) / sizeof(num_invalid_strs[0])) - +#define NUM_POSITIVE_STRS_SIZE RTE_DIM(num_valid_positive_strs) +#define NUM_NEGATIVE_STRS_SIZE RTE_DIM(num_valid_negative_strs) +#define NUM_POSITIVE_GARBAGE_STRS_SIZE RTE_DIM(num_garbage_positive_strs) +#define NUM_NEGATIVE_GARBAGE_STRS_SIZE RTE_DIM(num_garbage_negative_strs) +#define NUM_INVALID_STRS_SIZE RTE_DIM(num_invalid_strs) static int diff --git a/app/test/test_cmdline_portlist.c b/app/test/test_cmdline_portlist.c index 0dc6d0030..851215377 100644 --- a/app/test/test_cmdline_portlist.c +++ b/app/test/test_cmdline_portlist.c @@ -6,6 +6,7 @@ #include #include +#include #include #include @@ -88,14 +89,9 @@ const char * portlist_invalid_strs[] = { "0,1,0,1,0,1,0,1,0,1,0,1,0,1,0,1,0,1,0,1,0,1,0,1,0,1,0,1,0,1,0,1,2", }; -#define PORTLIST_VALID_STRS_SIZE \ - (sizeof(portlist_valid_strs) / sizeof(portlist_valid_strs[0])) -#define PORTLIST_GARBAGE_STRS_SIZE \ - (sizeof(portlist_garbage_strs) / sizeof(portlist_garbage_strs[0])) -#define PORTLIST_INVALID_STRS_SIZE \ - (sizeof(portlist_invalid_strs) / sizeof(portlist_invalid_strs[0])) - - +#define PORTLIST_VALID_STRS_SIZE RTE_DIM(portlist_valid_strs) +#define PORTLIST_GARBAGE_STRS_SIZE RTE_DIM(portlist_garbage_strs) +#define PORTLIST_INVALID_STRS_SIZE RTE_DIM(portlist_invalid_strs) /* test invalid parameters */ diff --git a/app/test/test_cmdline_string.c b/app/test/test_cmdline_string.c index 0461a85bb..f6ac76fc9 100644 --- a/app/test/test_cmdline_string.c +++ b/app/test/test_cmdline_string.c @@ -115,16 +115,11 @@ const char * string_help_strs[] = { -#define STRING_PARSE_STRS_SIZE \ - (sizeof(string_parse_strs) / sizeof(string_parse_strs[0])) -#define STRING_HELP_STRS_SIZE \ - (sizeof(string_help_strs) / sizeof(string_help_strs[0])) -#define STRING_ELT_STRS_SIZE \ - (sizeof(string_elt_strs) / sizeof(string_elt_strs[0])) -#define STRING_NB_STRS_SIZE \ - (sizeof(string_nb_strs) / sizeof(string_nb_strs[0])) -#define STRING_INVALID_STRS_SIZE \ - (sizeof(string_invalid_strs) / sizeof(string_invalid_strs[0])) +#define STRING_PARSE_STRS_SIZE RTE_DIM(string_parse_strs) +#define STRING_HELP_STRS_SIZE RTE_DIM(string_help_strs) +#define STRING_ELT_STRS_SIZE RTE_DIM(string_elt_strs) +#define STRING_NB_STRS_SIZE RTE_DIM(string_nb_strs) +#define STRING_INVALID_STRS_SIZE RTE_DIM(string_invalid_strs) #define SMALL_BUF 8 diff --git a/app/test/test_debug.c b/app/test/test_debug.c index faf2cf557..25eab97e2 100644 --- a/app/test/test_debug.c +++ b/app/test/test_debug.c @@ -81,7 +81,7 @@ test_exit(void) { int test_vals[] = { 0, 1, 2, 255, -1 }; unsigned i; - for (i = 0; i < sizeof(test_vals) / sizeof(test_vals[0]); i++){ + for (i = 0; i < RTE_DIM(test_vals); i++) { if (test_exit_val(test_vals[i]) < 0) return -1; } diff --git a/app/test/test_eal_flags.c b/app/test/test_eal_flags.c index 5b2c0f5cd..4ee809e3d 100644 --- a/app/test/test_eal_flags.c +++ b/app/test/test_eal_flags.c @@ -36,8 +36,7 @@ #define memtest1 "memtest1" #define memtest2 "memtest2" #define SOCKET_MEM_STRLEN (RTE_MAX_NUMA_NODES * 20) -#define launch_proc(ARGV) process_dup(ARGV, \ - sizeof(ARGV)/(sizeof(ARGV[0])), __func__) +#define launch_proc(ARGV) process_dup(ARGV, RTE_DIM(ARGV), __func__) enum hugepage_action { HUGEPAGE_CHECK_EXISTS = 0, @@ -268,7 +267,7 @@ test_whitelist_flag(void) pci_whitelist, "08:00.1,type=normal", }; - for (i = 0; i < sizeof(wlinval) / sizeof(wlinval[0]); i++) { + for (i = 0; i < RTE_DIM(wlinval); i++) { if (launch_proc(wlinval[i]) == 0) { printf("Error - process did run ok with invalid " "whitelist parameter\n"); @@ -324,7 +323,7 @@ test_invalid_b_flag(void) int i; - for (i = 0; i != sizeof (blinval) / sizeof (blinval[0]); i++) { + for (i = 0; i != RTE_DIM(blinval); i++) { if (launch_proc(blinval[i]) == 0) { printf("Error - process did run ok with invalid " "blacklist parameter\n"); @@ -425,7 +424,7 @@ test_invalid_r_flag(void) int i; - for (i = 0; i != sizeof (rinval) / sizeof (rinval[0]); i++) { + for (i = 0; i != RTE_DIM(rinval); i++) { if (launch_proc(rinval[i]) == 0) { printf("Error - process did run ok with invalid " "-r (rank) parameter\n"); diff --git a/app/test/test_errno.c b/app/test/test_errno.c index 7df8192d5..3ff0456a5 100644 --- a/app/test/test_errno.c +++ b/app/test/test_errno.c @@ -36,7 +36,7 @@ test_errno(void) if (rte_errno != 0) return -1; /* check for standard errors we return the same as libc */ - for (i = 0; i < sizeof(std_errs)/sizeof(std_errs[0]); i++){ + for (i = 0; i < RTE_DIM(std_errs); i++) { rte_retval = rte_strerror(std_errs[i]); libc_retval = strerror(std_errs[i]); printf("rte_strerror: '%s', strerror: '%s'\n", @@ -47,7 +47,7 @@ test_errno(void) /* for rte-specific errors ensure we return a different string * and that the string for libc is for an unknown error */ - for (i = 0; i < sizeof(rte_errs)/sizeof(rte_errs[0]); i++){ + for (i = 0; i < RTE_DIM(rte_errs); i++) { rte_retval = rte_strerror(rte_errs[i]); libc_retval = strerror(rte_errs[i]); printf("rte_strerror: '%s', strerror: '%s'\n", diff --git a/app/test/test_lpm.c b/app/test/test_lpm.c index e969fe051..68f000c1b 100644 --- a/app/test/test_lpm.c +++ b/app/test/test_lpm.c @@ -64,7 +64,7 @@ rte_lpm_test tests[] = { test18 }; -#define NUM_LPM_TESTS (sizeof(tests)/sizeof(tests[0])) +#define NUM_LPM_TESTS RTE_DIM(tests) #define MAX_DEPTH 32 #define MAX_RULES 256 #define NUMBER_TBL8S 256 diff --git a/app/test/test_lpm6.c b/app/test/test_lpm6.c index 670aadb40..1df4af257 100644 --- a/app/test/test_lpm6.c +++ b/app/test/test_lpm6.c @@ -85,7 +85,7 @@ rte_lpm6_test tests6[] = { test28, }; -#define NUM_LPM6_TESTS (sizeof(tests6)/sizeof(tests6[0])) +#define NUM_LPM6_TESTS RTE_DIM(tests6) #define MAX_DEPTH 128 #define MAX_RULES 1000000 #define NUMBER_TBL8S (1 << 16) diff --git a/app/test/test_lpm6_data.h b/app/test/test_lpm6_data.h index 565138a31..c3894f730 100644 --- a/app/test/test_lpm6_data.h +++ b/app/test/test_lpm6_data.h @@ -1029,8 +1029,7 @@ static struct rules_tbl_entry large_route_table[] = { {{234, 149, 220, 106, 0, 144, 214, 128, 35, 102, 0, 0, 0, 0, 0, 0}, 79, 106}, }; -#define NUM_ROUTE_ENTRIES \ - (sizeof(large_route_table) / sizeof(large_route_table[0])) +#define NUM_ROUTE_ENTRIES RTE_DIM(large_route_table) #define NUM_IPS_ENTRIES (NUM_ROUTE_ENTRIES * 100) diff --git a/app/test/test_malloc.c b/app/test/test_malloc.c index a16e28cc3..67a48ba38 100644 --- a/app/test/test_malloc.c +++ b/app/test/test_malloc.c @@ -255,7 +255,7 @@ test_str_to_size(void) {"18446744073709551616", 0} /* ULLONG_MAX + 1 == out of range*/ }; unsigned i; - for (i = 0; i < sizeof(test_values)/sizeof(test_values[0]); i++) + for (i = 0; i < RTE_DIM(test_values); i++) if (rte_str_to_size(test_values[i].str) != test_values[i].value) return -1; return 0; diff --git a/app/test/test_memcpy.c b/app/test/test_memcpy.c index 2c69ad964..53eb8433a 100644 --- a/app/test/test_memcpy.c +++ b/app/test/test_memcpy.c @@ -103,7 +103,7 @@ static int func_test(void) { unsigned int off_src, off_dst, i; - unsigned int num_buf_sizes = sizeof(buf_sizes) / sizeof(buf_sizes[0]); + unsigned int num_buf_sizes = RTE_DIM(buf_sizes); int ret; for (off_src = 0; off_src < ALIGNMENT_UNIT; off_src++) { diff --git a/app/test/test_memcpy_perf.c b/app/test/test_memcpy_perf.c index 6f436f3ef..8f06b0f1e 100644 --- a/app/test/test_memcpy_perf.c +++ b/app/test/test_memcpy_perf.c @@ -250,7 +250,7 @@ perf_test_constant_unaligned(void) static inline void perf_test_variable_aligned(void) { - unsigned n = sizeof(buf_sizes) / sizeof(buf_sizes[0]); + unsigned n = RTE_DIM(buf_sizes); unsigned i; for (i = 0; i < n; i++) { ALL_PERF_TESTS_FOR_SIZE((size_t)buf_sizes[i]); @@ -261,7 +261,7 @@ perf_test_variable_aligned(void) static inline void perf_test_variable_unaligned(void) { - unsigned n = sizeof(buf_sizes) / sizeof(buf_sizes[0]); + unsigned n = RTE_DIM(buf_sizes); unsigned i; for (i = 0; i < n; i++) { ALL_PERF_TESTS_FOR_SIZE_UNALIGNED((size_t)buf_sizes[i]); diff --git a/app/test/test_mp_secondary.c b/app/test/test_mp_secondary.c index 2ac33f781..ac15ddbf2 100644 --- a/app/test/test_mp_secondary.c +++ b/app/test/test_mp_secondary.c @@ -47,8 +47,7 @@ #include "process.h" -#define launch_proc(ARGV) process_dup(ARGV, \ - sizeof(ARGV)/(sizeof(ARGV[0])), __func__) +#define launch_proc(ARGV) process_dup(ARGV, RTE_DIM(ARGV), __func__) /* * This function is called in the primary i.e. main test, to spawn off secondary diff --git a/app/test/test_pdump.c b/app/test/test_pdump.c index af206968b..ad183184c 100644 --- a/app/test/test_pdump.c +++ b/app/test/test_pdump.c @@ -18,8 +18,7 @@ #include "process.h" #include "test_pdump.h" -#define launch_p(ARGV) process_dup(ARGV, \ - sizeof(ARGV)/(sizeof(ARGV[0])), __func__) +#define launch_p(ARGV) process_dup(ARGV, RTE_DIM(ARGV), __func__) struct rte_ring *ring_server; uint16_t portid; diff --git a/app/test/test_pmd_ring_perf.c b/app/test/test_pmd_ring_perf.c index 6318da18f..3b2ff9cb4 100644 --- a/app/test/test_pmd_ring_perf.c +++ b/app/test/test_pmd_ring_perf.c @@ -100,7 +100,7 @@ test_bulk_enqueue_dequeue(void) unsigned sz, i = 0; struct rte_mbuf *burst[MAX_BURST] = {0}; - for (sz = 0; sz < sizeof(bulk_sizes)/sizeof(bulk_sizes[0]); sz++) { + for (sz = 0; sz < RTE_DIM(bulk_sizes); sz++) { const uint64_t sc_start = rte_rdtsc(); for (i = 0; i < iterations; i++) { rte_ring_sp_enqueue_bulk(r, (void *)burst, diff --git a/app/test/test_ring_perf.c b/app/test/test_ring_perf.c index 70ee46ffe..f2accb8a0 100644 --- a/app/test/test_ring_perf.c +++ b/app/test/test_ring_perf.c @@ -240,7 +240,7 @@ run_on_core_pair(struct lcore_pair *cores, struct rte_ring *r, { struct thread_params param1 = {0}, param2 = {0}; unsigned i; - for (i = 0; i < sizeof(bulk_sizes)/sizeof(bulk_sizes[0]); i++) { + for (i = 0; i < RTE_DIM(bulk_sizes); i++) { lcore_count = 0; param1.size = param2.size = bulk_sizes[i]; param1.r = param2.r = r; @@ -376,7 +376,7 @@ test_burst_enqueue_dequeue(struct rte_ring *r) unsigned sz, i = 0; void *burst[MAX_BURST] = {0}; - for (sz = 0; sz < sizeof(bulk_sizes)/sizeof(bulk_sizes[0]); sz++) { + for (sz = 0; sz < RTE_DIM(bulk_sizes); sz++) { const uint64_t sc_start = rte_rdtsc(); for (i = 0; i < iterations; i++) { rte_ring_sp_enqueue_burst(r, burst, @@ -414,7 +414,7 @@ test_bulk_enqueue_dequeue(struct rte_ring *r) unsigned sz, i = 0; void *burst[MAX_BURST] = {0}; - for (sz = 0; sz < sizeof(bulk_sizes)/sizeof(bulk_sizes[0]); sz++) { + for (sz = 0; sz < RTE_DIM(bulk_sizes); sz++) { const uint64_t sc_start = rte_rdtsc(); for (i = 0; i < iterations; i++) { rte_ring_sp_enqueue_bulk(r, burst, diff --git a/app/test/test_timer_secondary.c b/app/test/test_timer_secondary.c index 790f18052..7a3bc873b 100644 --- a/app/test/test_timer_secondary.c +++ b/app/test/test_timer_secondary.c @@ -23,8 +23,7 @@ #define TEST_INFO_MZ_NAME "test_timer_info_mz" #define MSECPERSEC 1E3 -#define launch_proc(ARGV) \ - process_dup(ARGV, sizeof(ARGV)/(sizeof(ARGV[0])), __func__) +#define launch_proc(ARGV) process_dup(ARGV, RTE_DIM(ARGV), __func__) struct test_info { unsigned int mstr_lcore; From patchwork Mon Oct 28 09:09:05 2019 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Pavan Nikhilesh Bhagavatula X-Patchwork-Id: 62099 X-Patchwork-Delegate: david.marchand@redhat.com Return-Path: X-Original-To: patchwork@dpdk.org Delivered-To: patchwork@dpdk.org Received: from [92.243.14.124] (localhost [127.0.0.1]) by dpdk.org (Postfix) with ESMTP id E752B1BF42; Mon, 28 Oct 2019 10:09:21 +0100 (CET) Received: from mx0b-0016f401.pphosted.com (mx0b-0016f401.pphosted.com [67.231.156.173]) by dpdk.org (Postfix) with ESMTP id 419141BF33 for ; Mon, 28 Oct 2019 10:09:20 +0100 (CET) Received: from pps.filterd (m0045851.ppops.net [127.0.0.1]) by mx0b-0016f401.pphosted.com (8.16.0.42/8.16.0.42) with SMTP id x9S95qGI001845; Mon, 28 Oct 2019 02:09:19 -0700 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=marvell.com; h=from : to : cc : subject : date : message-id : in-reply-to : references : mime-version : content-transfer-encoding : content-type; s=pfpt0818; bh=xmzDAzARDdX25puAsWRTnJgmcUXyUv8IOZ1iADQiwJY=; b=D0RGnhKBLEfb42ZyawuHBvWhHhiviFmBdMg55n9mhzf/42WHYY7+skM64tgCNblj7/dT pmTdDluuJN0O4NNcnSs5mUVr1AKgBYn9Werqw6EL1Lw4486WUJY0hHDyUstaghSoBqmq RdmdtCcCx7wX8k8//eX6h8YsAqqd8+E3ecbnr3vGB91to127ted1mIiO2s6yZxgmzt9q EkY5DybI/icsghD4qgdRoqJcJiQPeb5o4tg1oNGG3e1srk2OheG+BNrU6Nobv6RoZRnz wKAkHSdUFHpGDNJIEsO4MeJXw8P6OH8vBy4IZnwFrEyDpbLnjgK0KuIXwigiLK+5y82o 1A== Received: from sc-exch03.marvell.com ([199.233.58.183]) by mx0b-0016f401.pphosted.com with ESMTP id 2vvnnnvv05-1 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-SHA384 bits=256 verify=NOT); Mon, 28 Oct 2019 02:09:19 -0700 Received: from SC-EXCH03.marvell.com (10.93.176.83) by SC-EXCH03.marvell.com (10.93.176.83) with Microsoft SMTP Server (TLS) id 15.0.1367.3; Mon, 28 Oct 2019 02:09:18 -0700 Received: from maili.marvell.com (10.93.176.43) by SC-EXCH03.marvell.com (10.93.176.83) with Microsoft SMTP Server id 15.0.1367.3 via Frontend Transport; Mon, 28 Oct 2019 02:09:18 -0700 Received: from BG-LT7430.marvell.com (unknown [10.28.17.14]) by maili.marvell.com (Postfix) with ESMTP id DA8973F7040; Mon, 28 Oct 2019 02:09:13 -0700 (PDT) From: To: Cristian Dumitrescu , Marko Kovacevic , Ori Kam , Bruce Richardson , Radu Nicolau , "Akhil Goyal" , Tomasz Kantecki , David Hunt , John McNamara , Harry van Haaren , Xiaoyun Li CC: , Pavan Nikhilesh Date: Mon, 28 Oct 2019 14:39:05 +0530 Message-ID: <20191028090907.824-2-pbhagavatula@marvell.com> X-Mailer: git-send-email 2.17.1 In-Reply-To: <20191028090907.824-1-pbhagavatula@marvell.com> References: <20191028090907.824-1-pbhagavatula@marvell.com> MIME-Version: 1.0 X-Proofpoint-Virus-Version: vendor=fsecure engine=2.50.10434:6.0.95,1.0.8 definitions=2019-10-28_04:2019-10-25,2019-10-28 signatures=0 Subject: [dpdk-dev] [PATCH 2/3] examples: use RTE_DIM to calculate array size X-BeenThere: dev@dpdk.org X-Mailman-Version: 2.1.15 Precedence: list List-Id: DPDK patches and discussions List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: dev-bounces@dpdk.org Sender: "dev" From: Pavan Nikhilesh use RTE_DIM macro to calculate array size. Suggested-by: David Marchand Signed-off-by: Pavan Nikhilesh --- examples/ip_pipeline/parser.c | 2 +- examples/ipv4_multicast/main.c | 3 +-- examples/l3fwd-power/main.c | 12 ++++-------- examples/l3fwd/l3fwd_em.c | 6 ++---- examples/l3fwd/l3fwd_lpm.c | 6 ++---- examples/vmdq/main.c | 2 +- examples/vmdq_dcb/main.c | 2 +- 7 files changed, 12 insertions(+), 21 deletions(-) -- 2.23.0 diff --git a/examples/ip_pipeline/parser.c b/examples/ip_pipeline/parser.c index 3fffeb586..fb0769fe3 100644 --- a/examples/ip_pipeline/parser.c +++ b/examples/ip_pipeline/parser.c @@ -528,7 +528,7 @@ my_ether_aton(const char *a) if (errno != 0 || end == a || (end[0] != ':' && end[0] != 0)) return NULL; a = end + 1; - } while (++i != sizeof(o) / sizeof(o[0]) && end[0] != 0); + } while (++i != RTE_DIM(o) && end[0] != 0); /* Junk at the end of line */ if (end[0] != 0) diff --git a/examples/ipv4_multicast/main.c b/examples/ipv4_multicast/main.c index 63333b5b6..cd2851c1c 100644 --- a/examples/ipv4_multicast/main.c +++ b/examples/ipv4_multicast/main.c @@ -155,8 +155,7 @@ static struct mcast_group_params mcast_group_table[] = { {RTE_IPV4(224,0,0,115), 0xF}, }; -#define N_MCAST_GROUPS \ - (sizeof (mcast_group_table) / sizeof (mcast_group_table[0])) +#define N_MCAST_GROUPS RTE_DIM(mcast_group_table) /* Send burst of packets on an output interface */ diff --git a/examples/l3fwd-power/main.c b/examples/l3fwd-power/main.c index d049d8a5d..2a56bfa8c 100644 --- a/examples/l3fwd-power/main.c +++ b/examples/l3fwd-power/main.c @@ -238,8 +238,7 @@ static struct lcore_params lcore_params_array_default[] = { }; struct lcore_params *lcore_params = lcore_params_array_default; -uint16_t nb_lcore_params = sizeof(lcore_params_array_default) / - sizeof(lcore_params_array_default[0]); +uint16_t nb_lcore_params = RTE_DIM(lcore_params_array_default); static struct rte_eth_conf port_conf = { .rxmode = { @@ -326,11 +325,9 @@ static lookup_struct_t *ipv6_l3fwd_lookup_struct[NB_SOCKETS]; #define L3FWD_HASH_ENTRIES 1024 -#define IPV4_L3FWD_NUM_ROUTES \ - (sizeof(ipv4_l3fwd_route_array) / sizeof(ipv4_l3fwd_route_array[0])) +#define IPV4_L3FWD_NUM_ROUTES RTE_DIM(ipv4_l3fwd_route_array) -#define IPV6_L3FWD_NUM_ROUTES \ - (sizeof(ipv6_l3fwd_route_array) / sizeof(ipv6_l3fwd_route_array[0])) +#define IPV6_L3FWD_NUM_ROUTES RTE_DIM(ipv6_l3fwd_route_array) static uint16_t ipv4_l3fwd_out_if[L3FWD_HASH_ENTRIES] __rte_cache_aligned; static uint16_t ipv6_l3fwd_out_if[L3FWD_HASH_ENTRIES] __rte_cache_aligned; @@ -354,8 +351,7 @@ static struct ipv4_l3fwd_route ipv4_l3fwd_route_array[] = { {RTE_IPV4(8,1,1,0), 24, 7}, }; -#define IPV4_L3FWD_NUM_ROUTES \ - (sizeof(ipv4_l3fwd_route_array) / sizeof(ipv4_l3fwd_route_array[0])) +#define IPV4_L3FWD_NUM_ROUTES RTE_DIM(ipv4_l3fwd_route_array) #define IPV4_L3FWD_LPM_MAX_RULES 1024 diff --git a/examples/l3fwd/l3fwd_em.c b/examples/l3fwd/l3fwd_em.c index 74a7c8fa4..1b1cce47d 100644 --- a/examples/l3fwd/l3fwd_em.c +++ b/examples/l3fwd/l3fwd_em.c @@ -203,11 +203,9 @@ ipv6_hash_crc(const void *data, __rte_unused uint32_t data_len, return init_val; } -#define IPV4_L3FWD_EM_NUM_ROUTES \ - (sizeof(ipv4_l3fwd_em_route_array) / sizeof(ipv4_l3fwd_em_route_array[0])) +#define IPV4_L3FWD_EM_NUM_ROUTES RTE_DIM(ipv4_l3fwd_em_route_array) -#define IPV6_L3FWD_EM_NUM_ROUTES \ - (sizeof(ipv6_l3fwd_em_route_array) / sizeof(ipv6_l3fwd_em_route_array[0])) +#define IPV6_L3FWD_EM_NUM_ROUTES RTE_DIM(ipv6_l3fwd_em_route_array) static uint8_t ipv4_l3fwd_out_if[L3FWD_HASH_ENTRIES] __rte_cache_aligned; static uint8_t ipv6_l3fwd_out_if[L3FWD_HASH_ENTRIES] __rte_cache_aligned; diff --git a/examples/l3fwd/l3fwd_lpm.c b/examples/l3fwd/l3fwd_lpm.c index a3a65f7fc..848b8135b 100644 --- a/examples/l3fwd/l3fwd_lpm.c +++ b/examples/l3fwd/l3fwd_lpm.c @@ -65,10 +65,8 @@ static struct ipv6_l3fwd_lpm_route ipv6_l3fwd_lpm_route_array[] = { {{32, 1, 2, 0, 0, 0, 0, 0, 0, 7, 0, 0, 0, 0, 0, 0}, 48, 7}, }; -#define IPV4_L3FWD_LPM_NUM_ROUTES \ - (sizeof(ipv4_l3fwd_lpm_route_array) / sizeof(ipv4_l3fwd_lpm_route_array[0])) -#define IPV6_L3FWD_LPM_NUM_ROUTES \ - (sizeof(ipv6_l3fwd_lpm_route_array) / sizeof(ipv6_l3fwd_lpm_route_array[0])) +#define IPV4_L3FWD_LPM_NUM_ROUTES RTE_DIM(ipv4_l3fwd_lpm_route_array) +#define IPV6_L3FWD_LPM_NUM_ROUTES RTE_DIM(ipv6_l3fwd_lpm_route_array) #define IPV4_L3FWD_LPM_MAX_RULES 1024 #define IPV4_L3FWD_LPM_NUMBER_TBL8S (1 << 8) diff --git a/examples/vmdq/main.c b/examples/vmdq/main.c index 6e6fc91ec..011110920 100644 --- a/examples/vmdq/main.c +++ b/examples/vmdq/main.c @@ -503,7 +503,7 @@ lcore_main(__attribute__((__unused__)) void *dummy) for (;;) { struct rte_mbuf *buf[MAX_PKT_BURST]; - const uint16_t buf_size = sizeof(buf) / sizeof(buf[0]); + const uint16_t buf_size = RTE_DIM(buf); for (p = 0; p < num_ports; p++) { const uint8_t sport = ports[p]; diff --git a/examples/vmdq_dcb/main.c b/examples/vmdq_dcb/main.c index 594c4f195..f417b2fd9 100644 --- a/examples/vmdq_dcb/main.c +++ b/examples/vmdq_dcb/main.c @@ -582,7 +582,7 @@ lcore_main(void *arg) for (;;) { struct rte_mbuf *buf[MAX_PKT_BURST]; - const uint16_t buf_size = sizeof(buf) / sizeof(buf[0]); + const uint16_t buf_size = RTE_DIM(buf); for (p = 0; p < num_ports; p++) { const uint8_t src = ports[p]; const uint8_t dst = ports[p ^ 1]; /* 0 <-> 1, 2 <-> 3 etc */ From patchwork Mon Oct 28 09:09:06 2019 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Pavan Nikhilesh Bhagavatula X-Patchwork-Id: 62100 X-Patchwork-Delegate: david.marchand@redhat.com Return-Path: X-Original-To: patchwork@dpdk.org Delivered-To: patchwork@dpdk.org Received: from [92.243.14.124] (localhost [127.0.0.1]) by dpdk.org (Postfix) with ESMTP id 65D541BF49; Mon, 28 Oct 2019 10:09:24 +0100 (CET) Received: from mx0b-0016f401.pphosted.com (mx0a-0016f401.pphosted.com [67.231.148.174]) by dpdk.org (Postfix) with ESMTP id 6A9DD1BF49 for ; Mon, 28 Oct 2019 10:09:23 +0100 (CET) Received: from pps.filterd (m0045849.ppops.net [127.0.0.1]) by mx0a-0016f401.pphosted.com (8.16.0.42/8.16.0.42) with SMTP id x9S95Ym8010250; Mon, 28 Oct 2019 02:09:22 -0700 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=marvell.com; h=from : to : cc : subject : date : message-id : in-reply-to : references : mime-version : content-transfer-encoding : content-type; s=pfpt0818; bh=+9VCD4pxG69WWo/MUIsNK71jqhfUwQkey/GOCkplmhA=; b=lGUgj8XrXX7CE/XZ/33GdkVMRhn0yDVi76vd+5CvI1Ih6r8w0zjzK/BTB2ykxViH3Dfa H3h2b/0EBcFRoyZEDWij9EJu3l+f5EQqtLzKrycgkkolLGHSSewAnzRsoG6H6SxF+RiB /zl+yrDFX3GWE1BBuDGXi/ZE4JiGf9Uf2u/6q08nBrWJ7f4bwogyw3Y4VxjZrYVnVt2D 857T4SGxL2/Aa595mU4ri6vFOerm5E+nNcmnC6HrS1BC7GV68EpjQs4EcQh4R7iyV2jL kd/HLvRuz2iEbP1OMDwTS59rqjgXiWLigD//ym2WIkcajLbaP6X3OZSKYXPV6ok8Wo+r fw== Received: from sc-exch02.marvell.com ([199.233.58.182]) by mx0a-0016f401.pphosted.com with ESMTP id 2vvkgq5cf4-1 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-SHA384 bits=256 verify=NOT); Mon, 28 Oct 2019 02:09:22 -0700 Received: from SC-EXCH03.marvell.com (10.93.176.83) by SC-EXCH02.marvell.com (10.93.176.82) with Microsoft SMTP Server (TLS) id 15.0.1367.3; Mon, 28 Oct 2019 02:09:21 -0700 Received: from maili.marvell.com (10.93.176.43) by SC-EXCH03.marvell.com (10.93.176.83) with Microsoft SMTP Server id 15.0.1367.3 via Frontend Transport; Mon, 28 Oct 2019 02:09:21 -0700 Received: from BG-LT7430.marvell.com (unknown [10.28.17.14]) by maili.marvell.com (Postfix) with ESMTP id D9FA03F703F; Mon, 28 Oct 2019 02:09:18 -0700 (PDT) From: To: Thomas Monjalon , Ferruh Yigit , Andrew Rybchenko , Konstantin Ananyev , Cristian Dumitrescu CC: , Pavan Nikhilesh Date: Mon, 28 Oct 2019 14:39:06 +0530 Message-ID: <20191028090907.824-3-pbhagavatula@marvell.com> X-Mailer: git-send-email 2.17.1 In-Reply-To: <20191028090907.824-1-pbhagavatula@marvell.com> References: <20191028090907.824-1-pbhagavatula@marvell.com> MIME-Version: 1.0 X-Proofpoint-Virus-Version: vendor=fsecure engine=2.50.10434:6.0.95,1.0.8 definitions=2019-10-28_04:2019-10-25,2019-10-28 signatures=0 Subject: [dpdk-dev] [PATCH 3/3] lib: use RTE_DIM to calculate array size X-BeenThere: dev@dpdk.org X-Mailman-Version: 2.1.15 Precedence: list List-Id: DPDK patches and discussions List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: dev-bounces@dpdk.org Sender: "dev" From: Pavan Nikhilesh use RTE_DIM to calculate array size. Suggested-by: David Marchand Signed-off-by: Pavan Nikhilesh --- lib/librte_ethdev/rte_ethdev.c | 8 +++----- lib/librte_ip_frag/ip_frag_internal.c | 5 ++--- lib/librte_port/rte_port_eventdev.c | 4 ++-- lib/librte_port/rte_port_eventdev.h | 4 ---- 4 files changed, 7 insertions(+), 14 deletions(-) -- 2.23.0 diff --git a/lib/librte_ethdev/rte_ethdev.c b/lib/librte_ethdev/rte_ethdev.c index 7743205d3..721ee694b 100644 --- a/lib/librte_ethdev/rte_ethdev.c +++ b/lib/librte_ethdev/rte_ethdev.c @@ -86,7 +86,7 @@ static const struct rte_eth_xstats_name_off rte_stats_strings[] = { rx_nombuf)}, }; -#define RTE_NB_STATS (sizeof(rte_stats_strings) / sizeof(rte_stats_strings[0])) +#define RTE_NB_STATS RTE_DIM(rte_stats_strings) static const struct rte_eth_xstats_name_off rte_rxq_stats_strings[] = { {"packets", offsetof(struct rte_eth_stats, q_ipackets)}, @@ -94,15 +94,13 @@ static const struct rte_eth_xstats_name_off rte_rxq_stats_strings[] = { {"errors", offsetof(struct rte_eth_stats, q_errors)}, }; -#define RTE_NB_RXQ_STATS (sizeof(rte_rxq_stats_strings) / \ - sizeof(rte_rxq_stats_strings[0])) +#define RTE_NB_RXQ_STATS RTE_DIM(rte_rxq_stats_strings) static const struct rte_eth_xstats_name_off rte_txq_stats_strings[] = { {"packets", offsetof(struct rte_eth_stats, q_opackets)}, {"bytes", offsetof(struct rte_eth_stats, q_obytes)}, }; -#define RTE_NB_TXQ_STATS (sizeof(rte_txq_stats_strings) / \ - sizeof(rte_txq_stats_strings[0])) +#define RTE_NB_TXQ_STATS RTE_DIM(rte_txq_stats_strings) #define RTE_RX_OFFLOAD_BIT2STR(_name) \ { DEV_RX_OFFLOAD_##_name, #_name } diff --git a/lib/librte_ip_frag/ip_frag_internal.c b/lib/librte_ip_frag/ip_frag_internal.c index 97470a872..b436a4c93 100644 --- a/lib/librte_ip_frag/ip_frag_internal.c +++ b/lib/librte_ip_frag/ip_frag_internal.c @@ -107,8 +107,7 @@ ip_frag_process(struct ip_frag_pkt *fp, struct rte_ip_frag_death_row *dr, IP_LAST_FRAG_IDX : UINT32_MAX; /* this is the intermediate fragment. */ - } else if ((idx = fp->last_idx) < - sizeof (fp->frags) / sizeof (fp->frags[0])) { + } else if ((idx = fp->last_idx) < RTE_DIM(fp->frags)) { fp->last_idx++; } @@ -116,7 +115,7 @@ ip_frag_process(struct ip_frag_pkt *fp, struct rte_ip_frag_death_row *dr, * erroneous packet: either exceed max allowed number of fragments, * or duplicate first/last fragment encountered. */ - if (idx >= sizeof (fp->frags) / sizeof (fp->frags[0])) { + if (idx >= RTE_DIM(fp->frags)) { /* report an error. */ if (fp->key.key_len == IPV4_KEYLEN) diff --git a/lib/librte_port/rte_port_eventdev.c b/lib/librte_port/rte_port_eventdev.c index aa93bd3a2..fd7dac9a5 100644 --- a/lib/librte_port/rte_port_eventdev.c +++ b/lib/librte_port/rte_port_eventdev.c @@ -179,7 +179,7 @@ rte_port_eventdev_writer_create(void *params, int socket_id) port->evt_op = conf->evt_op; memset(&port->ev, 0, sizeof(port->ev)); - for (i = 0; i < ARRAY_SIZE(port->ev); i++) { + for (i = 0; i < RTE_DIM(port->ev); i++) { port->ev[i].queue_id = port->queue_id; port->ev[i].sched_type = port->sched_type; port->ev[i].op = port->evt_op; @@ -386,7 +386,7 @@ rte_port_eventdev_writer_nodrop_create(void *params, int socket_id) port->evt_op = conf->evt_op; memset(&port->ev, 0, sizeof(port->ev)); - for (i = 0; i < ARRAY_SIZE(port->ev); i++) { + for (i = 0; i < RTE_DIM(port->ev); i++) { port->ev[i].queue_id = port->queue_id; port->ev[i].sched_type = port->sched_type; port->ev[i].op = port->evt_op; diff --git a/lib/librte_port/rte_port_eventdev.h b/lib/librte_port/rte_port_eventdev.h index acf88f4e9..966e9cdaf 100644 --- a/lib/librte_port/rte_port_eventdev.h +++ b/lib/librte_port/rte_port_eventdev.h @@ -9,10 +9,6 @@ extern "C" { #endif -#ifndef ARRAY_SIZE -#define ARRAY_SIZE(x) (sizeof(x) / sizeof((x)[0])) -#endif - /** * @file * RTE Port Eventdev Interface