From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1752810AbbIGM2U (ORCPT ); Mon, 7 Sep 2015 08:28:20 -0400 Received: from mx1.redhat.com ([209.132.183.28]:42901 "EHLO mx1.redhat.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1751268AbbIGM2R (ORCPT ); Mon, 7 Sep 2015 08:28:17 -0400 Date: Mon, 7 Sep 2015 14:28:14 +0200 From: Jiri Olsa To: Matt Fleming Cc: Arnaldo Carvalho de Melo , Ingo Molnar , linux-kernel@vger.kernel.org, Andi Kleen , Vince Weaver , Peter Zijlstra , Kanaka Juvva , Vikas Shivappa , Matt Fleming Subject: Re: [PATCH 2/3] perf tests: Add arch tests Message-ID: <20150907122814.GG5806@krava.brq.redhat.com> References: <1441479742-15402-1-git-send-email-matt@codeblueprint.co.uk> <1441479742-15402-3-git-send-email-matt@codeblueprint.co.uk> MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Disposition: inline In-Reply-To: <1441479742-15402-3-git-send-email-matt@codeblueprint.co.uk> User-Agent: Mutt/1.5.23 (2014-03-12) Sender: linux-kernel-owner@vger.kernel.org List-ID: X-Mailing-List: linux-kernel@vger.kernel.org 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) ... jirka