On Sun, 1 Oct 2017 15:30:40 -0400 Jérémy Lefaure <jeremy.lefa...@lse.epita.fr> wrote:
> It is useless to re-invent the ARRAY_SIZE macro so let's use it instead > of DATA_CNT. > > Found with Coccinelle with the following semantic patch: > @r depends on (org || report)@ > type T; > T[] E; > position p; > @@ > ( > (sizeof(E)@p /sizeof(*E)) > | > (sizeof(E)@p /sizeof(E[...])) > | > (sizeof(E)@p /sizeof(T)) > ) > > Signed-off-by: Jérémy Lefaure <jeremy.lefa...@lse.epita.fr> > --- > kernel/trace/trace_events_filter.c | 7 +++---- > 1 file changed, 3 insertions(+), 4 deletions(-) > > diff --git a/kernel/trace/trace_events_filter.c > b/kernel/trace/trace_events_filter.c > index 61e7f0678d33..02d0f378dc5c 100644 > --- a/kernel/trace/trace_events_filter.c > +++ b/kernel/trace/trace_events_filter.c > @@ -23,6 +23,7 @@ > #include <linux/mutex.h> > #include <linux/perf_event.h> > #include <linux/slab.h> > +#include <linux/kernel.h> > > #include "trace.h" > #include "trace_output.h" > @@ -2376,8 +2377,6 @@ static struct test_filter_data_t { > #undef YES > #undef NO > > -#define DATA_CNT (sizeof(test_filter_data)/sizeof(struct test_filter_data_t)) Just change DATA_CNT to be: #define DATA_CNT ARRAY_SIZE(test_filter_data) and don't change the rest. -- Steve > - > static int test_pred_visited; > > static int test_pred_visited_fn(struct filter_pred *pred, void *event) > @@ -2417,7 +2416,7 @@ static __init int ftrace_test_event_filter(void) > > printk(KERN_INFO "Testing ftrace filter: "); > > - for (i = 0; i < DATA_CNT; i++) { > + for (i = 0; i < ARRAY_SIZE(test_filter_data); i++) { > struct event_filter *filter = NULL; > struct test_filter_data_t *d = &test_filter_data[i]; > int err; > @@ -2463,7 +2462,7 @@ static __init int ftrace_test_event_filter(void) > } > } > > - if (i == DATA_CNT) > + if (i == ARRAY_SIZE(test_filter_data)) > printk(KERN_CONT "OK\n"); > > return 0;