From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1751350AbdKUQpO (ORCPT ); Tue, 21 Nov 2017 11:45:14 -0500 Received: from mail.efficios.com ([167.114.142.141]:58750 "EHLO mail.efficios.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1750794AbdKUQpM (ORCPT ); Tue, 21 Nov 2017 11:45:12 -0500 Date: Tue, 21 Nov 2017 16:46:11 +0000 (UTC) From: Mathieu Desnoyers To: shuah Cc: Peter Zijlstra , "Paul E. McKenney" , Boqun Feng , Andy Lutomirski , Dave Watson , linux-kernel , linux-api , Paul Turner , Andrew Morton , Russell King , Thomas Gleixner , Ingo Molnar , "H. Peter Anvin" , Andrew Hunter , Andi Kleen , Chris Lameter , Ben Maurer , rostedt , Josh Triplett , Linus Torvalds , Catalin Marinas , Will Deacon , Michael Kerrisk , linux-kselftest , Shuah Khan Message-ID: <78388403.19365.1511282771630.JavaMail.zimbra@efficios.com> In-Reply-To: References: <20171121141900.18471-1-mathieu.desnoyers@efficios.com> <20171121141900.18471-15-mathieu.desnoyers@efficios.com> Subject: Re: [RFC PATCH for 4.15 v3 14/22] cpu_opv: selftests: Implement selftests MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 7bit X-Originating-IP: [167.114.142.141] X-Mailer: Zimbra 8.7.11_GA_1854 (ZimbraWebClient - FF52 (Linux)/8.7.11_GA_1854) Thread-Topic: cpu_opv: selftests: Implement selftests Thread-Index: 2MZKlQ07yjXJFn0PRWWon0JnDCKbOA== Sender: linux-kernel-owner@vger.kernel.org List-ID: X-Mailing-List: linux-kernel@vger.kernel.org ----- On Nov 21, 2017, at 10:17 AM, shuah shuah@kernel.org wrote: [...] >> +int main(int argc, char **argv) >> +{ >> + int ret = 0; >> + >> + ret |= test_compare_eq_same(); >> + ret |= test_compare_eq_diff(); >> + ret |= test_compare_ne_same(); >> + ret |= test_compare_ne_diff(); >> + ret |= test_2compare_eq_index(); >> + ret |= test_2compare_ne_index(); >> + ret |= test_memcpy(); >> + ret |= test_memcpy_u32(); >> + ret |= test_memcpy_mb_memcpy(); >> + ret |= test_add(); >> + ret |= test_two_add(); >> + ret |= test_or(); >> + ret |= test_and(); >> + ret |= test_xor(); >> + ret |= test_lshift(); >> + ret |= test_rshift(); >> + ret |= test_cmpxchg_success(); >> + ret |= test_cmpxchg_fail(); >> + ret |= test_memcpy_fault(); >> + ret |= test_unknown_op(); >> + ret |= test_max_ops(); >> + ret |= test_too_many_ops(); >> + ret |= test_memcpy_single_too_large(); >> + ret |= test_memcpy_single_ok_sum_too_large(); >> + ret |= test_page_fault(); >> + > > Where do pass counts get printed. I am seeing error messages when tests fail, > not seeing any pass messages. It would be nice to use ksft framework for > counting pass/fail for these series of tests that get run. done. New output: TAP version 13 (standard_in) 1: syntax error selftests: basic_cpu_opv_test ======================================== TAP version 13 ok 1 test_compare_eq same test ok 2 test_compare_eq different test ok 3 test_compare_ne same test ok 4 test_compare_ne different test ok 5 test_2compare_eq index test ok 6 test_2compare_ne index test ok 7 test_memcpy test ok 8 test_memcpy_u32 test ok 9 test_memcpy_mb_memcpy test ok 10 test_add test ok 11 test_two_add test ok 12 test_or test ok 13 test_and test ok 14 test_xor test ok 15 test_lshift test ok 16 test_rshift test ok 17 test_cmpxchg success test ok 18 test_cmpxchg fail test ok 19 test_memcpy_fault test ok 20 test_unknown_op test ok 21 test_max_ops test ok 22 test_too_many_ops test ok 23 test_memcpy_single_too_large test ok 24 test_memcpy_single_ok_sum_too_large test ok 25 test_page_fault test Pass 25 Fail 0 Xfail 0 Xpass 0 Skip 0 Error 0 1..25 ok 1.. selftests: basic_cpu_opv_test [PASS] (note the "(standard_in) 1: syntax error" for which I provided a fix in a separate thread still appears with my make version) [...] >> diff --git a/tools/testing/selftests/lib.mk b/tools/testing/selftests/lib.mk >> index 5bef05d6ba39..441d7bc63bb7 100644 >> --- a/tools/testing/selftests/lib.mk >> +++ b/tools/testing/selftests/lib.mk >> @@ -105,6 +105,9 @@ COMPILE.S = $(CC) $(ASFLAGS) $(CPPFLAGS) $(TARGET_ARCH) -c >> LINK.S = $(CC) $(ASFLAGS) $(CPPFLAGS) $(LDFLAGS) $(TARGET_ARCH) >> endif >> >> +# Selftest makefiles can override those targets by setting >> +# OVERRIDE_TARGETS = 1. >> +ifeq ($(OVERRIDE_TARGETS),) >> $(OUTPUT)/%:%.c >> $(LINK.c) $^ $(LDLIBS) -o $@ >> >> @@ -113,5 +116,6 @@ $(OUTPUT)/%.o:%.S >> >> $(OUTPUT)/%:%.S >> $(LINK.S) $^ $(LDLIBS) -o $@ >> +endif >> >> .PHONY: run_tests all clean install emit_tests >> > > As I said before, please do this change in a separate patch. Sorry, it appears that I missed this comment last time. Will move this change to a separate patch. Thanks, Mathieu -- Mathieu Desnoyers EfficiOS Inc. http://www.efficios.com From mboxrd@z Thu Jan 1 00:00:00 1970 From: mathieu.desnoyers at efficios.com (Mathieu Desnoyers) Date: Tue, 21 Nov 2017 16:46:11 +0000 (UTC) Subject: [Linux-kselftest-mirror] [RFC PATCH for 4.15 v3 14/22] cpu_opv: selftests: Implement selftests In-Reply-To: References: <20171121141900.18471-1-mathieu.desnoyers@efficios.com> <20171121141900.18471-15-mathieu.desnoyers@efficios.com> Message-ID: <78388403.19365.1511282771630.JavaMail.zimbra@efficios.com> ----- On Nov 21, 2017, at 10:17 AM, shuah shuah at kernel.org wrote: [...] >> +int main(int argc, char **argv) >> +{ >> + int ret = 0; >> + >> + ret |= test_compare_eq_same(); >> + ret |= test_compare_eq_diff(); >> + ret |= test_compare_ne_same(); >> + ret |= test_compare_ne_diff(); >> + ret |= test_2compare_eq_index(); >> + ret |= test_2compare_ne_index(); >> + ret |= test_memcpy(); >> + ret |= test_memcpy_u32(); >> + ret |= test_memcpy_mb_memcpy(); >> + ret |= test_add(); >> + ret |= test_two_add(); >> + ret |= test_or(); >> + ret |= test_and(); >> + ret |= test_xor(); >> + ret |= test_lshift(); >> + ret |= test_rshift(); >> + ret |= test_cmpxchg_success(); >> + ret |= test_cmpxchg_fail(); >> + ret |= test_memcpy_fault(); >> + ret |= test_unknown_op(); >> + ret |= test_max_ops(); >> + ret |= test_too_many_ops(); >> + ret |= test_memcpy_single_too_large(); >> + ret |= test_memcpy_single_ok_sum_too_large(); >> + ret |= test_page_fault(); >> + > > Where do pass counts get printed. I am seeing error messages when tests fail, > not seeing any pass messages. It would be nice to use ksft framework for > counting pass/fail for these series of tests that get run. done. New output: TAP version 13 (standard_in) 1: syntax error selftests: basic_cpu_opv_test ======================================== TAP version 13 ok 1 test_compare_eq same test ok 2 test_compare_eq different test ok 3 test_compare_ne same test ok 4 test_compare_ne different test ok 5 test_2compare_eq index test ok 6 test_2compare_ne index test ok 7 test_memcpy test ok 8 test_memcpy_u32 test ok 9 test_memcpy_mb_memcpy test ok 10 test_add test ok 11 test_two_add test ok 12 test_or test ok 13 test_and test ok 14 test_xor test ok 15 test_lshift test ok 16 test_rshift test ok 17 test_cmpxchg success test ok 18 test_cmpxchg fail test ok 19 test_memcpy_fault test ok 20 test_unknown_op test ok 21 test_max_ops test ok 22 test_too_many_ops test ok 23 test_memcpy_single_too_large test ok 24 test_memcpy_single_ok_sum_too_large test ok 25 test_page_fault test Pass 25 Fail 0 Xfail 0 Xpass 0 Skip 0 Error 0 1..25 ok 1.. selftests: basic_cpu_opv_test [PASS] (note the "(standard_in) 1: syntax error" for which I provided a fix in a separate thread still appears with my make version) [...] >> diff --git a/tools/testing/selftests/lib.mk b/tools/testing/selftests/lib.mk >> index 5bef05d6ba39..441d7bc63bb7 100644 >> --- a/tools/testing/selftests/lib.mk >> +++ b/tools/testing/selftests/lib.mk >> @@ -105,6 +105,9 @@ COMPILE.S = $(CC) $(ASFLAGS) $(CPPFLAGS) $(TARGET_ARCH) -c >> LINK.S = $(CC) $(ASFLAGS) $(CPPFLAGS) $(LDFLAGS) $(TARGET_ARCH) >> endif >> >> +# Selftest makefiles can override those targets by setting >> +# OVERRIDE_TARGETS = 1. >> +ifeq ($(OVERRIDE_TARGETS),) >> $(OUTPUT)/%:%.c >> $(LINK.c) $^ $(LDLIBS) -o $@ >> >> @@ -113,5 +116,6 @@ $(OUTPUT)/%.o:%.S >> >> $(OUTPUT)/%:%.S >> $(LINK.S) $^ $(LDLIBS) -o $@ >> +endif >> >> .PHONY: run_tests all clean install emit_tests >> > > As I said before, please do this change in a separate patch. Sorry, it appears that I missed this comment last time. Will move this change to a separate patch. Thanks, Mathieu -- Mathieu Desnoyers EfficiOS Inc. http://www.efficios.com -- To unsubscribe from this list: send the line "unsubscribe linux-kselftest" in the body of a message to majordomo at vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html From mboxrd@z Thu Jan 1 00:00:00 1970 From: mathieu.desnoyers@efficios.com (Mathieu Desnoyers) Date: Tue, 21 Nov 2017 16:46:11 +0000 (UTC) Subject: [Linux-kselftest-mirror] [RFC PATCH for 4.15 v3 14/22] cpu_opv: selftests: Implement selftests In-Reply-To: References: <20171121141900.18471-1-mathieu.desnoyers@efficios.com> <20171121141900.18471-15-mathieu.desnoyers@efficios.com> Message-ID: <78388403.19365.1511282771630.JavaMail.zimbra@efficios.com> Content-Type: text/plain; charset="UTF-8" Message-ID: <20171121164611.dCjzRRUef-FlS1MgrwCllOAYgG16-4VmOqD_s6_XSFE@z> ----- On Nov 21, 2017,@10:17 AM, shuah shuah@kernel.org wrote: [...] >> +int main(int argc, char **argv) >> +{ >> + int ret = 0; >> + >> + ret |= test_compare_eq_same(); >> + ret |= test_compare_eq_diff(); >> + ret |= test_compare_ne_same(); >> + ret |= test_compare_ne_diff(); >> + ret |= test_2compare_eq_index(); >> + ret |= test_2compare_ne_index(); >> + ret |= test_memcpy(); >> + ret |= test_memcpy_u32(); >> + ret |= test_memcpy_mb_memcpy(); >> + ret |= test_add(); >> + ret |= test_two_add(); >> + ret |= test_or(); >> + ret |= test_and(); >> + ret |= test_xor(); >> + ret |= test_lshift(); >> + ret |= test_rshift(); >> + ret |= test_cmpxchg_success(); >> + ret |= test_cmpxchg_fail(); >> + ret |= test_memcpy_fault(); >> + ret |= test_unknown_op(); >> + ret |= test_max_ops(); >> + ret |= test_too_many_ops(); >> + ret |= test_memcpy_single_too_large(); >> + ret |= test_memcpy_single_ok_sum_too_large(); >> + ret |= test_page_fault(); >> + > > Where do pass counts get printed. I am seeing error messages when tests fail, > not seeing any pass messages. It would be nice to use ksft framework for > counting pass/fail for these series of tests that get run. done. New output: TAP version 13 (standard_in) 1: syntax error selftests: basic_cpu_opv_test ======================================== TAP version 13 ok 1 test_compare_eq same test ok 2 test_compare_eq different test ok 3 test_compare_ne same test ok 4 test_compare_ne different test ok 5 test_2compare_eq index test ok 6 test_2compare_ne index test ok 7 test_memcpy test ok 8 test_memcpy_u32 test ok 9 test_memcpy_mb_memcpy test ok 10 test_add test ok 11 test_two_add test ok 12 test_or test ok 13 test_and test ok 14 test_xor test ok 15 test_lshift test ok 16 test_rshift test ok 17 test_cmpxchg success test ok 18 test_cmpxchg fail test ok 19 test_memcpy_fault test ok 20 test_unknown_op test ok 21 test_max_ops test ok 22 test_too_many_ops test ok 23 test_memcpy_single_too_large test ok 24 test_memcpy_single_ok_sum_too_large test ok 25 test_page_fault test Pass 25 Fail 0 Xfail 0 Xpass 0 Skip 0 Error 0 1..25 ok 1.. selftests: basic_cpu_opv_test [PASS] (note the "(standard_in) 1: syntax error" for which I provided a fix in a separate thread still appears with my make version) [...] >> diff --git a/tools/testing/selftests/lib.mk b/tools/testing/selftests/lib.mk >> index 5bef05d6ba39..441d7bc63bb7 100644 >> --- a/tools/testing/selftests/lib.mk >> +++ b/tools/testing/selftests/lib.mk >> @@ -105,6 +105,9 @@ COMPILE.S = $(CC) $(ASFLAGS) $(CPPFLAGS) $(TARGET_ARCH) -c >> LINK.S = $(CC) $(ASFLAGS) $(CPPFLAGS) $(LDFLAGS) $(TARGET_ARCH) >> endif >> >> +# Selftest makefiles can override those targets by setting >> +# OVERRIDE_TARGETS = 1. >> +ifeq ($(OVERRIDE_TARGETS),) >> $(OUTPUT)/%:%.c >> $(LINK.c) $^ $(LDLIBS) -o $@ >> >> @@ -113,5 +116,6 @@ $(OUTPUT)/%.o:%.S >> >> $(OUTPUT)/%:%.S >> $(LINK.S) $^ $(LDLIBS) -o $@ >> +endif >> >> .PHONY: run_tests all clean install emit_tests >> > > As I said before, please do this change in a separate patch. Sorry, it appears that I missed this comment last time. Will move this change to a separate patch. Thanks, Mathieu -- Mathieu Desnoyers EfficiOS Inc. http://www.efficios.com -- To unsubscribe from this list: send the line "unsubscribe linux-kselftest" in the body of a message to majordomo at vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html From mboxrd@z Thu Jan 1 00:00:00 1970 From: Mathieu Desnoyers Subject: Re: [RFC PATCH for 4.15 v3 14/22] cpu_opv: selftests: Implement selftests Date: Tue, 21 Nov 2017 16:46:11 +0000 (UTC) Message-ID: <78388403.19365.1511282771630.JavaMail.zimbra@efficios.com> References: <20171121141900.18471-1-mathieu.desnoyers@efficios.com> <20171121141900.18471-15-mathieu.desnoyers@efficios.com> Mime-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 7bit Return-path: In-Reply-To: Sender: linux-api-owner-u79uwXL29TY76Z2rM5mHXA@public.gmane.org To: shuah Cc: Peter Zijlstra , "Paul E. McKenney" , Boqun Feng , Andy Lutomirski , Dave Watson , linux-kernel , linux-api , Paul Turner , Andrew Morton , Russell King , Thomas Gleixner , Ingo Molnar , "H. Peter Anvin" , Andrew Hunter , Andi Kleen , Chris Lameter , Ben Maurer , rostedt , Josh Triplett , Linus Torvalds , Catalin Marinas List-Id: linux-api@vger.kernel.org ----- On Nov 21, 2017, at 10:17 AM, shuah shuah-DgEjT+Ai2ygdnm+yROfE0A@public.gmane.org wrote: [...] >> +int main(int argc, char **argv) >> +{ >> + int ret = 0; >> + >> + ret |= test_compare_eq_same(); >> + ret |= test_compare_eq_diff(); >> + ret |= test_compare_ne_same(); >> + ret |= test_compare_ne_diff(); >> + ret |= test_2compare_eq_index(); >> + ret |= test_2compare_ne_index(); >> + ret |= test_memcpy(); >> + ret |= test_memcpy_u32(); >> + ret |= test_memcpy_mb_memcpy(); >> + ret |= test_add(); >> + ret |= test_two_add(); >> + ret |= test_or(); >> + ret |= test_and(); >> + ret |= test_xor(); >> + ret |= test_lshift(); >> + ret |= test_rshift(); >> + ret |= test_cmpxchg_success(); >> + ret |= test_cmpxchg_fail(); >> + ret |= test_memcpy_fault(); >> + ret |= test_unknown_op(); >> + ret |= test_max_ops(); >> + ret |= test_too_many_ops(); >> + ret |= test_memcpy_single_too_large(); >> + ret |= test_memcpy_single_ok_sum_too_large(); >> + ret |= test_page_fault(); >> + > > Where do pass counts get printed. I am seeing error messages when tests fail, > not seeing any pass messages. It would be nice to use ksft framework for > counting pass/fail for these series of tests that get run. done. New output: TAP version 13 (standard_in) 1: syntax error selftests: basic_cpu_opv_test ======================================== TAP version 13 ok 1 test_compare_eq same test ok 2 test_compare_eq different test ok 3 test_compare_ne same test ok 4 test_compare_ne different test ok 5 test_2compare_eq index test ok 6 test_2compare_ne index test ok 7 test_memcpy test ok 8 test_memcpy_u32 test ok 9 test_memcpy_mb_memcpy test ok 10 test_add test ok 11 test_two_add test ok 12 test_or test ok 13 test_and test ok 14 test_xor test ok 15 test_lshift test ok 16 test_rshift test ok 17 test_cmpxchg success test ok 18 test_cmpxchg fail test ok 19 test_memcpy_fault test ok 20 test_unknown_op test ok 21 test_max_ops test ok 22 test_too_many_ops test ok 23 test_memcpy_single_too_large test ok 24 test_memcpy_single_ok_sum_too_large test ok 25 test_page_fault test Pass 25 Fail 0 Xfail 0 Xpass 0 Skip 0 Error 0 1..25 ok 1.. selftests: basic_cpu_opv_test [PASS] (note the "(standard_in) 1: syntax error" for which I provided a fix in a separate thread still appears with my make version) [...] >> diff --git a/tools/testing/selftests/lib.mk b/tools/testing/selftests/lib.mk >> index 5bef05d6ba39..441d7bc63bb7 100644 >> --- a/tools/testing/selftests/lib.mk >> +++ b/tools/testing/selftests/lib.mk >> @@ -105,6 +105,9 @@ COMPILE.S = $(CC) $(ASFLAGS) $(CPPFLAGS) $(TARGET_ARCH) -c >> LINK.S = $(CC) $(ASFLAGS) $(CPPFLAGS) $(LDFLAGS) $(TARGET_ARCH) >> endif >> >> +# Selftest makefiles can override those targets by setting >> +# OVERRIDE_TARGETS = 1. >> +ifeq ($(OVERRIDE_TARGETS),) >> $(OUTPUT)/%:%.c >> $(LINK.c) $^ $(LDLIBS) -o $@ >> >> @@ -113,5 +116,6 @@ $(OUTPUT)/%.o:%.S >> >> $(OUTPUT)/%:%.S >> $(LINK.S) $^ $(LDLIBS) -o $@ >> +endif >> >> .PHONY: run_tests all clean install emit_tests >> > > As I said before, please do this change in a separate patch. Sorry, it appears that I missed this comment last time. Will move this change to a separate patch. Thanks, Mathieu -- Mathieu Desnoyers EfficiOS Inc. http://www.efficios.com