From mboxrd@z Thu Jan 1 00:00:00 1970 From: Daniel Vetter Subject: Re: [PATCH v2 1/2] lib/igt_core: make single/simple tests use igt_exit Date: Mon, 29 Sep 2014 16:58:13 +0200 Message-ID: <20140929145813.GW4109@phenom.ffwll.local> References: <1411994071-8870-1-git-send-email-tim.gore@intel.com> <1411994071-8870-2-git-send-email-tim.gore@intel.com> Mime-Version: 1.0 Content-Type: text/plain; charset="us-ascii" Content-Transfer-Encoding: 7bit Return-path: Received: from mail-we0-f174.google.com (mail-we0-f174.google.com [74.125.82.174]) by gabe.freedesktop.org (Postfix) with ESMTP id E36DE6E291 for ; Mon, 29 Sep 2014 07:58:15 -0700 (PDT) Received: by mail-we0-f174.google.com with SMTP id w62so12750871wes.33 for ; Mon, 29 Sep 2014 07:58:15 -0700 (PDT) Content-Disposition: inline In-Reply-To: <1411994071-8870-2-git-send-email-tim.gore@intel.com> List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: intel-gfx-bounces@lists.freedesktop.org Sender: "Intel-gfx" To: tim.gore@intel.com Cc: intel-gfx@lists.freedesktop.org List-Id: intel-gfx@lists.freedesktop.org On Mon, Sep 29, 2014 at 01:34:30PM +0100, tim.gore@intel.com wrote: > From: Tim Gore > > Currently tests that use igt_simple_main will simply call > "exit()" if they pass, making it difficult to ensure that > any required cleanup is done. At present this is not an > issue, but it will be when I submit a patch to turn off the > lowmemorykiller for all tests. > > Signed-off-by: Tim Gore Merged, with the api doc for igt_exit update. Please don't forget to adjust documentation! Thanks, Daniel > --- > lib/igt_core.c | 9 +++++---- > lib/igt_core.h | 2 +- > tests/igt_simulation.c | 2 +- > 3 files changed, 7 insertions(+), 6 deletions(-) > > diff --git a/lib/igt_core.c b/lib/igt_core.c > index 5d41468..9344815 100644 > --- a/lib/igt_core.c > +++ b/lib/igt_core.c > @@ -641,7 +641,7 @@ bool igt_only_list_subtests(void) > static bool skipped_one = false; > static bool succeeded_one = false; > static bool failed_one = false; > -static int igt_exitcode; > +static int igt_exitcode = IGT_EXIT_SUCCESS; > > static void exit_subtest(const char *) __attribute__((noreturn)); > static void exit_subtest(const char *result) > @@ -692,7 +692,8 @@ void igt_skip(const char *f, ...) > assert(in_fixture); > __igt_fixture_end(); > } else { > - exit(IGT_EXIT_SKIP); > + igt_exitcode = IGT_EXIT_SKIP; > + igt_exit(); > } > } > > @@ -786,7 +787,7 @@ void igt_fail(int exitcode) > __igt_fixture_end(); > } > > - exit(exitcode); > + igt_exit(); > } > } > > @@ -857,7 +858,7 @@ void igt_exit(void) > exit(IGT_EXIT_SUCCESS); > > if (!test_with_subtests) > - exit(IGT_EXIT_SUCCESS); > + exit(igt_exitcode); > > /* Calling this without calling one of the above is a failure */ > assert(skipped_one || succeeded_one || failed_one); > diff --git a/lib/igt_core.h b/lib/igt_core.h > index d74cbf9..974a2fb 100644 > --- a/lib/igt_core.h > +++ b/lib/igt_core.h > @@ -188,7 +188,7 @@ void igt_simple_init_parse_opts(int argc, char **argv, > int main(int argc, char **argv) { \ > igt_simple_init(argc, argv); \ > igt_tokencat(__real_main, __LINE__)(); \ > - exit(0); \ > + igt_exit(); \ > } \ > static void igt_tokencat(__real_main, __LINE__)(void) \ > > diff --git a/tests/igt_simulation.c b/tests/igt_simulation.c > index 13b2da9..e588959 100644 > --- a/tests/igt_simulation.c > +++ b/tests/igt_simulation.c > @@ -65,7 +65,7 @@ static int do_fork(void) > > igt_skip_on_simulation(); > > - exit(0); > + igt_exit(); > } else { > if (list_subtests) > igt_subtest_init(2, argv_list); > -- > 2.1.1 > > _______________________________________________ > Intel-gfx mailing list > Intel-gfx@lists.freedesktop.org > http://lists.freedesktop.org/mailman/listinfo/intel-gfx -- Daniel Vetter Software Engineer, Intel Corporation +41 (0) 79 365 57 48 - http://blog.ffwll.ch