On 06/28/2017 01:36 AM, Shuah Khan wrote: > On 06/27/2017 10:11 AM, Greg KH wrote: >> On Tue, Jun 27, 2017 at 10:04:47AM -0600, Shuah Khan wrote: >>> Convert breakpoint_test_arm64 output to TAP13 format. >>> >>> Signed-off-by: Shuah Khan <shuahkh@xxxxxxxxxxxxxxx> >>> --- >>> .../selftests/breakpoints/breakpoint_test_arm64.c | 114 ++++++++++++++------- >>> 1 file changed, 79 insertions(+), 35 deletions(-) >>> >>> diff --git a/tools/testing/selftests/breakpoints/breakpoint_test_arm64.c b/tools/testing/selftests/breakpoints/breakpoint_test_arm64.c >>> index fa6d57af5217..d13bd0dea13e 100644 >>> --- a/tools/testing/selftests/breakpoints/breakpoint_test_arm64.c >>> +++ b/tools/testing/selftests/breakpoints/breakpoint_test_arm64.c >>> @@ -41,20 +41,27 @@ static volatile uint8_t var[96] __attribute__((__aligned__(32))); >>> static void child(int size, int wr) >>> { >>> volatile uint8_t *addr = &var[32 + wr]; >>> + char msg_buf[512]; >>> >>> if (ptrace(PTRACE_TRACEME, 0, NULL, NULL) != 0) { >>> - perror("ptrace(PTRACE_TRACEME) failed"); >>> - _exit(1); >>> + snprintf(msg_buf, sizeof(msg_buf), >>> + "ptrace(PTRACE_TRACEME) failed: %s\n", >>> + strerror(errno)); >>> + ksft_exit_fail_msg(msg_buf); >> >> No objection to this patch, but perhaps the "msg" functions could either >> be variable arg macros, or just a printk() like function that can take >> the string and anything you want to send to it. > > Right. Changing "msg" functions to take var args will make things easier. > I will take care of that and use this test for a use-case. I was going to work on this... Do you want to take care of it or can I do it? Thank you, Paul >> >> So this could be: >> ksft_exit_fail_msg("ptrace(PTRACE_TRACEME) failed: %s\n", strerror(errno)); > > Right. > >> >> Anyway, just a thought, might make conversions a lot easier, no need for >> intermediate buffers> >> thanks, >> >> greg k-h >> > > thanks, > -- Shuah > -- To unsubscribe from this list: send the line "unsubscribe linux-kselftest" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html