2022-05-04 17:47:29

by Maxime Ripard

[permalink] [raw]
Subject: Re: [PATCH] drm/todo: Add entry for using kunit in the subsystem

Hi,

On Wed, May 04, 2022 at 10:02:12AM +0200, Javier Martinez Canillas wrote:
> The Kernel Unit Testing (KUnit) framework provides a common framework for
> unit tests within the Linux kernel. Having a test suite would allow to
> identify regressions earlier.
>
> Signed-off-by: Javier Martinez Canillas <[email protected]>
> ---
>
> Documentation/gpu/todo.rst | 14 ++++++++++++++
> 1 file changed, 14 insertions(+)
>
> diff --git a/Documentation/gpu/todo.rst b/Documentation/gpu/todo.rst
> index 127e76ee0b2d..10bfb50908d1 100644
> --- a/Documentation/gpu/todo.rst
> +++ b/Documentation/gpu/todo.rst
> @@ -603,6 +603,20 @@ Level: Advanced
> Better Testing
> ==============
>
> +Add unit tests using the Kernel Unit Testing (KUnit) framework
> +--------------------------------------------------------------
> +
> +The `KUnit <https://www.kernel.org/doc/html/latest/dev-tools/kunit/index.html>`_
> +provides a common framework for unit tests within the Linux kernel. Having a
> +test suite would allow to identify regressions earlier.
> +
> +A good candidate for the first unit tests are the format-conversion helpers in
> +``drm_format_helper.c``.
> +
> +Contact: Javier Martinez Canillas <[email protected]>
> +
> +Level: Intermediate

Kunit is fairly easy to grasp if you have some knowledge of other unit
testing frameworks already (pytest, cmocka, etc.)

Another good candidate would be to convert (some ?) selftests to kunit.
I'm not sure the others, but at least test-drm_cmdline_parser should be
fairly easy to convert.

Maxime


Attachments:
(No filename) (1.55 kB)
signature.asc (235.00 B)
Download all attachments

2022-05-04 17:52:44

by Javier Martinez Canillas

[permalink] [raw]
Subject: Re: [PATCH] drm/todo: Add entry for using kunit in the subsystem

Hello Maxime,

Thanks for your feedback.

On 5/4/22 10:10, Maxime Ripard wrote:
> Hi,
>
> On Wed, May 04, 2022 at 10:02:12AM +0200, Javier Martinez Canillas wrote:
>> The Kernel Unit Testing (KUnit) framework provides a common framework for
>> unit tests within the Linux kernel. Having a test suite would allow to
>> identify regressions earlier.
>>
>> Signed-off-by: Javier Martinez Canillas <[email protected]>
>> ---
>>
>> Documentation/gpu/todo.rst | 14 ++++++++++++++
>> 1 file changed, 14 insertions(+)
>>
>> diff --git a/Documentation/gpu/todo.rst b/Documentation/gpu/todo.rst
>> index 127e76ee0b2d..10bfb50908d1 100644
>> --- a/Documentation/gpu/todo.rst
>> +++ b/Documentation/gpu/todo.rst
>> @@ -603,6 +603,20 @@ Level: Advanced
>> Better Testing
>> ==============
>>
>> +Add unit tests using the Kernel Unit Testing (KUnit) framework
>> +--------------------------------------------------------------
>> +
>> +The `KUnit <https://www.kernel.org/doc/html/latest/dev-tools/kunit/index.html>`_
>> +provides a common framework for unit tests within the Linux kernel. Having a
>> +test suite would allow to identify regressions earlier.
>> +
>> +A good candidate for the first unit tests are the format-conversion helpers in
>> +``drm_format_helper.c``.
>> +
>> +Contact: Javier Martinez Canillas <[email protected]>
>> +
>> +Level: Intermediate
>
> Kunit is fairly easy to grasp if you have some knowledge of other unit
> testing frameworks already (pytest, cmocka, etc.)
>

Yes, I didn't set to intermediate due kunit but rather due the format
conversions, since the functions are not easy to read and understand.

And the person writing the unit tests will have to get familiar with
the different formats to verify that conversions are done correctly.

> Another good candidate would be to convert (some ?) selftests to kunit.
> I'm not sure the others, but at least test-drm_cmdline_parser should be
> fairly easy to convert.
>

Indeed. Maybe I would add it as a separate entr though, as a follow-up.

> Maxime

--
Best regards,

Javier Martinez Canillas
Linux Engineering
Red Hat


2022-05-06 21:21:18

by Daniel Vetter

[permalink] [raw]
Subject: Re: [PATCH] drm/todo: Add entry for using kunit in the subsystem

On Wed, May 04, 2022 at 10:10:30AM +0200, Maxime Ripard wrote:
> Hi,
>
> On Wed, May 04, 2022 at 10:02:12AM +0200, Javier Martinez Canillas wrote:
> > The Kernel Unit Testing (KUnit) framework provides a common framework for
> > unit tests within the Linux kernel. Having a test suite would allow to
> > identify regressions earlier.
> >
> > Signed-off-by: Javier Martinez Canillas <[email protected]>
> > ---
> >
> > Documentation/gpu/todo.rst | 14 ++++++++++++++
> > 1 file changed, 14 insertions(+)
> >
> > diff --git a/Documentation/gpu/todo.rst b/Documentation/gpu/todo.rst
> > index 127e76ee0b2d..10bfb50908d1 100644
> > --- a/Documentation/gpu/todo.rst
> > +++ b/Documentation/gpu/todo.rst
> > @@ -603,6 +603,20 @@ Level: Advanced
> > Better Testing
> > ==============
> >
> > +Add unit tests using the Kernel Unit Testing (KUnit) framework
> > +--------------------------------------------------------------
> > +
> > +The `KUnit <https://www.kernel.org/doc/html/latest/dev-tools/kunit/index.html>`_
> > +provides a common framework for unit tests within the Linux kernel. Having a
> > +test suite would allow to identify regressions earlier.
> > +
> > +A good candidate for the first unit tests are the format-conversion helpers in
> > +``drm_format_helper.c``.
> > +
> > +Contact: Javier Martinez Canillas <[email protected]>
> > +
> > +Level: Intermediate
>
> Kunit is fairly easy to grasp if you have some knowledge of other unit
> testing frameworks already (pytest, cmocka, etc.)
>
> Another good candidate would be to convert (some ?) selftests to kunit.
> I'm not sure the others, but at least test-drm_cmdline_parser should be
> fairly easy to convert.

All the drm selftest should be good candidates for conversion to kunit.

Either way patch is Acked-by: Daniel Vetter <[email protected]>

Cheers, Daniel
--
Daniel Vetter
Software Engineer, Intel Corporation
http://blog.ffwll.ch

2022-05-07 08:16:20

by Maxime Ripard

[permalink] [raw]
Subject: Re: [PATCH] drm/todo: Add entry for using kunit in the subsystem

On Wed, May 04, 2022 at 10:34:39AM +0200, Javier Martinez Canillas wrote:
> Hello Maxime,
>
> Thanks for your feedback.
>
> On 5/4/22 10:10, Maxime Ripard wrote:
> > Hi,
> >
> > On Wed, May 04, 2022 at 10:02:12AM +0200, Javier Martinez Canillas wrote:
> >> The Kernel Unit Testing (KUnit) framework provides a common framework for
> >> unit tests within the Linux kernel. Having a test suite would allow to
> >> identify regressions earlier.
> >>
> >> Signed-off-by: Javier Martinez Canillas <[email protected]>
> >> ---
> >>
> >> Documentation/gpu/todo.rst | 14 ++++++++++++++
> >> 1 file changed, 14 insertions(+)
> >>
> >> diff --git a/Documentation/gpu/todo.rst b/Documentation/gpu/todo.rst
> >> index 127e76ee0b2d..10bfb50908d1 100644
> >> --- a/Documentation/gpu/todo.rst
> >> +++ b/Documentation/gpu/todo.rst
> >> @@ -603,6 +603,20 @@ Level: Advanced
> >> Better Testing
> >> ==============
> >>
> >> +Add unit tests using the Kernel Unit Testing (KUnit) framework
> >> +--------------------------------------------------------------
> >> +
> >> +The `KUnit <https://www.kernel.org/doc/html/latest/dev-tools/kunit/index.html>`_
> >> +provides a common framework for unit tests within the Linux kernel. Having a
> >> +test suite would allow to identify regressions earlier.
> >> +
> >> +A good candidate for the first unit tests are the format-conversion helpers in
> >> +``drm_format_helper.c``.
> >> +
> >> +Contact: Javier Martinez Canillas <[email protected]>
> >> +
> >> +Level: Intermediate
> >
> > Kunit is fairly easy to grasp if you have some knowledge of other unit
> > testing frameworks already (pytest, cmocka, etc.)
> >
>
> Yes, I didn't set to intermediate due kunit but rather due the format
> conversions, since the functions are not easy to read and understand.
>
> And the person writing the unit tests will have to get familiar with
> the different formats to verify that conversions are done correctly.
>
> > Another good candidate would be to convert (some ?) selftests to kunit.
> > I'm not sure the others, but at least test-drm_cmdline_parser should be
> > fairly easy to convert.
> >
>
> Indeed. Maybe I would add it as a separate entr though, as a follow-up.

Yeah, that works for me

Acked-by: Maxime Ripard <[email protected]>

Maxime


Attachments:
(No filename) (2.29 kB)
signature.asc (235.00 B)
Download all attachments