On Mon, 07 Sep, at 02:28:14PM, Jiri Olsa wrote:
> On Sat, Sep 05, 2015 at 08:02:21PM +0100, Matt Fleming wrote:
> 
> SNIP
> 
> >  };
> >  
> > +static struct test *tests[] = {
> > +   generic_tests,
> > +   arch_tests,
> > +};
> > +
> >  static bool perf_test__matches(struct test *test, int curr, int argc, 
> > const char *argv[])
> >  {
> >     int i;
> > @@ -237,7 +229,11 @@ static int run_test(struct test *test)
> >     return err;
> >  }
> >  
> > -#define for_each_test(t)    for (t = &tests[0]; t->func; t++)
> > +static unsigned int ___j;          /* This is obviously not thread-safe */
> > +
> > +#define for_each_test(t)                                   \
> > +   for (___j = 0; ___j < ARRAY_SIZE(tests); ___j++)        \
> > +           for (t = &tests[___j][0]; t->func; t++)
> 
> why not have ____j on stack and pas it into for_each_test
> 
> for_each_test(j, t)                                     
> ...

Right, I made a conscious decision to not do that because I didn't
want the caller to have to care about providing an iterator variable.
It also makes the diff slightly bigger.

But I don't feel that strongly about it, so I'll make this change.

-- 
Matt Fleming, Intel Open Source Technology Center
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majord...@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Please read the FAQ at  http://www.tux.org/lkml/

Reply via email to