[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <762d9ca5-82f3-588c-b147-b0954a764ea7@redhat.com>
Date: Fri, 26 Jun 2020 09:38:43 -0400
From: Joe Lawrence <joe.lawrence@...hat.com>
To: Petr Mladek <pmladek@...e.com>
Cc: Naresh Kamboju <naresh.kamboju@...aro.org>,
Michael Ellerman <mpe@...erman.id.au>,
"open list:KERNEL SELFTEST FRAMEWORK"
<linux-kselftest@...r.kernel.org>,
open list <linux-kernel@...r.kernel.org>,
Kees Cook <keescook@...omium.org>,
Anders Roxell <anders.roxell@...aro.org>,
Daniel Díaz <daniel.diaz@...aro.org>,
Justin Cook <justin.cook@...aro.org>,
lkft-triage@...ts.linaro.org, Miroslav Benes <mbenes@...e.cz>,
Shuah Khan <shuah@...nel.org>
Subject: Re: [PATCH 1/2] selftests/lkdtm: Don't clear dmesg when running tests
On 6/26/20 4:02 AM, Petr Mladek wrote:
> On Wed 2020-06-24 16:12:47, Joe Lawrence wrote:
>> On Wed, Jun 24, 2020 at 10:39:55AM +0200, Petr Mladek wrote:
>>> On Tue 2020-06-23 23:48:36, Joe Lawrence wrote:
>>>> On 6/22/20 4:51 AM, Naresh Kamboju wrote:
>>>>> On Fri, 8 May 2020 at 12:23, Michael Ellerman <mpe@...erman.id.au> wrote:
>>>>>>
>>>>>> It is Very Rude to clear dmesg in test scripts. That's because the
>>>>>> script may be part of a larger test run, and clearing dmesg
>>>>>> potentially destroys the output of other tests.
>>>>>>
>>>>>> We can avoid using dmesg -c by saving the content of dmesg before the
>>>>>> test, and then using diff to compare that to the dmesg afterward,
>>>>>> producing a log with just the added lines.
>>>>>>
>>>>>>>>> diff --git a/tools/testing/selftests/lkdtm/run.sh b/tools/testing/selftests/lkdtm/run.sh
>>>>>> index dadf819148a4..0b409e187c7b 100755
>>>>>> --- a/tools/testing/selftests/lkdtm/run.sh
>>>>>> +++ b/tools/testing/selftests/lkdtm/run.sh
>>>>>> # Record and dump the results
>>>>>> -dmesg -c >"$LOG"
>>>>>> +dmesg | diff --changed-group-format='%>' --unchanged-group-format='' "$DMESG" - > "$LOG" || true
>>>>>
>>>>> We are facing problems with the diff `=%>` part of the option.
>>>>> This report is from the OpenEmbedded environment.
>>>>> We have the same problem from livepatch_testcases.
>>>>>
>>>>> # selftests lkdtm BUG.sh
>>>>> lkdtm: BUG.sh_ #
>>>>> # diff unrecognized option '--changed-group-format=%>'
>>>>> unrecognized: option_'--changed-group-format=%>' #
>>>>> # BusyBox v1.27.2 (2020-03-30 164108 UTC) multi-call binary.
>>>>> v1.27.2: (2020-03-30_164108 #
>
>> I did a bit more hacking to work that awk script into the livepatching
>> tests. The changes aren't too bad and coding it ourselves lets us drop
>> the temporary dmesg file business. If this looks good, I can send out
>> as a real patch, but then that raises a few questions:
>
> The patch worked and I agree that it is not that bad.
>
> Well, what about using "comm" as proposed by Michael in the other
> mail? It seems to be part of coreutils and should be everywhere.
>
> I guess that many people, including me, are not fluent in awk.
> So, I am slightly in favor of the "comm" approach ;-)
>
comm is definitely simpler and for some reason I forgot about the
leading timestamps (again!) dismissing it thinking that the inputs
weren't sorted. But luckily they are and if Naresh or anyone can
confirm that comm is well supported in the BusyBox testing environment,
then using that is fine w/me.
-- Joe
Powered by blists - more mailing lists