Re: [PATCH 0/4] Convert to TAP13 using ksft_ var arg msg api

From: Shuah Khan
Date: Fri Jun 30 2017 - 13:06:11 EST


On 06/30/2017 10:52 AM, Paul Elder wrote:
> On 07/01/2017 01:33 AM, Shuah Khan wrote:
>> On 06/30/2017 10:13 AM, Paul Elder wrote:
>>> On 06/30/2017 08:18 AM, Shuah Khan wrote:
>>>> This patch series converts breakpoint_test_arm64 to TAP13 output. Uses
>>>> ksft_ var arg msg functions as needed. Changed to ensure parent is the
>>>> one that increments test counters.
>>>>
>>>> breakpoint_test, step_after_suspend_test, membarrier tests are changed
>>>> to use ksft_ var arg msg functions as needed.
>>>>
>>>> This patch series depends on Paul Elder's
>>>>
>>>> [PATCH v2 0/2] kselftest: make ksft_* output functions variadic
>>>> The v2 series doesn't append newline and makes it easier to use.
>>>>
>>>> Shuah Khan (4):
>>>> selftests: breakpoint_test: use ksft_* var arg msg api
>>>> selftests: breakpoints: step_after_suspend_test use ksft_* var arg msg
>>>> api
>>>> selftests: breakpoints: breakpoint_test_arm64: convert test to use
>>>> TAP13
>>>> selftests: membarrier: use ksft_* var arg msg api
>>>>
>>>> .../selftests/breakpoints/breakpoint_test.c | 28 ++++---
>>>> .../selftests/breakpoints/breakpoint_test_arm64.c | 94 +++++++++++++---------
>>>> .../breakpoints/step_after_suspend_test.c | 59 ++++++++------
>>>> .../testing/selftests/membarrier/membarrier_test.c | 91 ++++++++++-----------
>>>> 4 files changed, 148 insertions(+), 124 deletions(-)
>>>>
>>> Looks good to me.
>>>
>>> Although I am wondering why you said earlier that you were going to go with
>>> my v1, while this depends on v2.
>>>
>>> Thank you,
>>>
>>> Paul
>>>
>>>
>>
>> Yeah my bad!
>>
>> I was playing with both v1 and v2 for my testing. I lost track of which one worked
>> well. I had to start from square one and re-test.
> Oh okay. Understood.
>
>>
>> v2 by not appending newline, allows custom formats in individual test messages.
>> For example, a test wants to use tabs between two ksft_print_msg() calls or _report_
>> messages. v2 is flexible and works better and leds itself well. Users can just pass
>> the format and expect it to stick.
> I see. I didn't notice this advantage. Though if a test wants to separate two
> ksft_print_msg()s with tabs, wouldn't there still be a # between them?

Sure. The important thing for me is that - passed in format sticking and not changing.

>
>>
>> If there are no issues with this series, I plan to apply your v2 series and this
>> series later on today or early tomorrow to linux-kselftest next.
> I have no objections.
>

Thanks.

>>
>> If we have this infrastructure in place, we will be able to make progress in the
>> next release with the TAP13 conversion of other tests.> Indeed. Although I'm having trouble with tests that fork.

Please focus on tests that don't fork()/exec() first.

I would recommend having parent print test counts - child will use ksft_print_msg()
for all its output I was able to use that strategy for tests in this series.

This might not work for all tests. We have to revisit the tests that fork() and exec().
I plan to look at parent/child tests in the next couple of weeks.

thanks,
-- Shuah