From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1752347AbbC2Xoz (ORCPT ); Sun, 29 Mar 2015 19:44:55 -0400 Received: from ozlabs.org ([103.22.144.67]:41310 "EHLO ozlabs.org" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1750895AbbC2Xox (ORCPT ); Sun, 29 Mar 2015 19:44:53 -0400 Message-ID: <1427672690.4218.1.camel@ellerman.id.au> Subject: Re: [PATCH 5/5] kselftest: Add exit code defines From: Michael Ellerman To: Darren Hart Cc: Linux Kernel Mailing List , Shuah Khan , linux-api@vger.kernel.org, Ingo Molnar , Peter Zijlstra , Thomas Gleixner , Davidlohr Bueso , KOSAKI Motohiro Date: Mon, 30 Mar 2015 10:44:50 +1100 In-Reply-To: <5515E323.1070800@linux.intel.com> References: <597c9eabcac5da9456d6cfd6de9117591d73385e.1427493640.git.dvhart@linux.intel.com> <43a448183a340b61d91c711da4a75898e3ffd8f2.1427493640.git.dvhart@linux.intel.com> <1427497178.3986.1.camel@ellerman.id.au> <5515E323.1070800@linux.intel.com> Content-Type: text/plain; charset="UTF-8" X-Mailer: Evolution 3.12.10-0ubuntu1~14.10.1 Mime-Version: 1.0 Content-Transfer-Encoding: 7bit Sender: linux-kernel-owner@vger.kernel.org List-ID: X-Mailing-List: linux-kernel@vger.kernel.org On Fri, 2015-03-27 at 16:09 -0700, Darren Hart wrote: > > On 3/27/15 3:59 PM, Michael Ellerman wrote: > > On Fri, 2015-03-27 at 15:17 -0700, Darren Hart wrote: > >> Define the exit codes with KSFT_PASS and similar so tests can use these > >> directly if they choose. Also enable harnesses and other tooling to use > >> the defines instead of hardcoding the return codes. > > > > +1 > > > >> diff --git a/tools/testing/selftests/kselftest.h b/tools/testing/selftests/kselftest.h > >> index 572c888..ef1c80d 100644 > >> --- a/tools/testing/selftests/kselftest.h > >> +++ b/tools/testing/selftests/kselftest.h > >> @@ -13,6 +13,13 @@ > >> #include > >> #include > >> > >> +/* define kselftest exit codes */ > >> +#define KSFT_PASS 0 > >> +#define KSFT_FAIL 1 > >> +#define KSFT_XFAIL 2 > >> +#define KSFT_XPASS 3 > >> +#define KSFT_SKIP 4 > >> + > >> /* counters */ > >> struct ksft_count { > >> unsigned int ksft_pass; > >> @@ -40,23 +47,23 @@ static inline void ksft_print_cnts(void) > >> > >> static inline int ksft_exit_pass(void) > >> { > >> - exit(0); > >> + exit(KSFT_PASS); > >> } > > > > Am I the only person who's bothered by the fact that these don't actually > > return int? > > That bothered me to, but I couldn't be bothered to go read the manuals > apparently to come up with a compelling argument :-) Yeah, obviously the compiler accepts it, but it's still a bit weird. > I also think the ksft_exit* routines should go ahead and increment the > counters (at least optionally) so we don't have to call two functions. But the ksft_exit_*() routines exit, so there's no point incrementing the counters. Unless they *also* print the counters before exiting? To be honest I think we need to decide if the selftests are going to speak TAP or xUnit or whatever, and then switch to that. In their current form these helpers don't help much. cheers