From: Stephen Boyd <sboyd@kernel.org>
To: Daniel Latypov <dlatypov@google.com>
Cc: Maxime Ripard <maxime@cerno.tech>,
Mike Turquette <mturquette@baylibre.com>,
linux-clk@vger.kernel.org,
Dave Stevenson <dave.stevenson@raspberrypi.com>,
Phil Elwell <phil@raspberrypi.com>,
Tim Gover <tim.gover@raspberrypi.com>,
Dom Cobley <dom@raspberrypi.com>,
dri-devel@lists.freedesktop.org, kunit-dev@googlegroups.com
Subject: Re: [PATCH v6 02/12] clk: Introduce Kunit Tests for the framework
Date: Fri, 25 Mar 2022 14:19:47 -0700 [thread overview]
Message-ID: <20220325211949.77643C004DD@smtp.kernel.org> (raw)
In-Reply-To: <CAGS_qxrDs5RYa4nxNR2ghsyBhgVyMHApi+GJKzGxF7FvNHe9dQ@mail.gmail.com>
Quoting Daniel Latypov (2022-02-24 15:21:57)
> On Thu, Feb 24, 2022 at 2:54 PM Stephen Boyd <sboyd@kernel.org> wrote:
> >
> > Quoting Daniel Latypov (2022-02-23 14:50:59)
> > > On Wed, Feb 23, 2022 at 2:56 AM Maxime Ripard <maxime@cerno.tech> wrote:
> > > >
> > > > Let's test various parts of the rate-related clock API with the kunit
> > > > testing framework.
> > > >
> > > > Cc: kunit-dev@googlegroups.com
> > > > Suggested-by: Stephen Boyd <sboyd@kernel.org>
> > > > Signed-off-by: Maxime Ripard <maxime@cerno.tech>
> > >
> > > Tested-by: Daniel Latypov <dlatypov@google.com>
> > >
> > > Looks good to me on the KUnit side.
> > > Two small nits below.
> > >
> > > FYI, I computed the incremental coverage for this series, i.e.:
> > > 1) applied the full series
> > > 2) computed the absolute coverage
> > >
> > > $ ./tools/testing/kunit/kunit.py run --kunitconfig=drivers/clk
> > > --make_options=CC=/usr/bin/gcc-6 --kconfig_add=CONFIG_DEBUG_KERNEL=y
> > > --kconfig_add=CONFIG_DEBUG_INFO=y --kconfig_add=CONFIG_GCOV=y
> > > $ lcov -t "clk_tests" -o coverage.info -c -d .kunit/ --gcov-tool=/usr/bin/gcov-6
> >
> > This is cool. Thanks! Is it possible to add some 'coverage' command to
> > kunit so we don't have to recall this invocation?
>
> This is documented at
> https://www.kernel.org/doc/html/latest/dev-tools/kunit/running_tips.html#generating-code-coverage-reports-under-uml
> It also includes pointers on how to use lcov to process the .gcda files.
> I wrote it before --kconfig_add existed, so it just looks a bit different.
>
> The main blockers to directly supporting this in kunit.py are
> 1.) this only works on UML
> 2.) it needs gcc-6 or lower (and the kernel's min version is 5.1, iirc)...
> 3.) in kernels older than 5.14, this requires some more hacks to get
> working. So for the large portion of us stuck dealing with somewhat
> older kernels, we'd have to do stuff manually anyway.
>
> For #1, we'd need different kconfig options and kunit.py's QEMU would
> need some sort of userspace (busybox should be sufficient).
> For #2, I don't recall what the precise issues were anymore. But I
> think there were some more issues in gcc 8 or 9... :(
>
> >
> > >
> > > 3) intersected that with the total diff
> >
> > This would also be cool to do automatically with a revision range.
>
> Hmm, can you elaborate?
> I assume you mean other revision ranges beyond this patch set?
I mean somehow to tell kunit.py that I want incremental coverage
information for a git revision range so that I can say something like
kunit.py incremental HEAD~3..HEAD
and have it tell me the line coverage.
next prev parent reply other threads:[~2022-03-25 21:19 UTC|newest]
Thread overview: 29+ messages / expand[flat|nested] mbox.gz Atom feed top
2022-02-23 10:55 [PATCH v6 00/12] clk: Improve clock range handling Maxime Ripard
2022-02-23 10:55 ` [PATCH v6 01/12] clk: Fix clk_hw_get_clk() when dev is NULL Maxime Ripard
2022-02-23 10:55 ` [PATCH v6 02/12] clk: Introduce Kunit Tests for the framework Maxime Ripard
2022-02-23 22:50 ` Daniel Latypov
2022-02-24 22:54 ` Stephen Boyd
2022-02-24 23:21 ` Daniel Latypov
2022-03-25 21:19 ` Stephen Boyd [this message]
2022-03-25 22:44 ` Daniel Latypov
2022-02-25 14:26 ` Maxime Ripard
2022-02-25 22:44 ` Stephen Boyd
2022-02-28 11:10 ` Maxime Ripard
2022-02-25 13:22 ` Maxime Ripard
2022-02-25 21:29 ` Daniel Latypov
2022-02-28 10:47 ` Maxime Ripard
2022-03-25 22:36 ` Daniel Latypov
2022-03-28 7:57 ` Maxime Ripard
2022-03-28 19:36 ` Daniel Latypov
2022-03-30 7:43 ` Maxime Ripard
2022-02-23 10:55 ` [PATCH v6 03/12] clk: Enforce that disjoints limits are invalid Maxime Ripard
2022-02-23 10:55 ` [PATCH v6 04/12] clk: Always clamp the rounded rate Maxime Ripard
2022-02-23 10:55 ` [PATCH v6 05/12] clk: Use clamp instead of open-coding our own Maxime Ripard
2022-02-24 22:51 ` Stephen Boyd
2022-02-23 10:55 ` [PATCH v6 06/12] clk: Always set the rate on clk_set_range_rate Maxime Ripard
2022-02-23 10:55 ` [PATCH v6 07/12] clk: Add clk_drop_range Maxime Ripard
2022-02-23 10:55 ` [PATCH v6 08/12] clk: bcm: rpi: Add variant structure Maxime Ripard
2022-02-23 10:55 ` [PATCH v6 09/12] clk: bcm: rpi: Set a default minimum rate Maxime Ripard
2022-02-23 10:55 ` [PATCH v6 10/12] clk: bcm: rpi: Run some clocks at the minimum rate allowed Maxime Ripard
2022-02-23 10:55 ` [PATCH v6 11/12] drm/vc4: Add logging and comments Maxime Ripard
2022-02-23 10:56 ` [PATCH v6 12/12] drm/vc4: hdmi: Remove clock rate initialization Maxime Ripard
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=20220325211949.77643C004DD@smtp.kernel.org \
--to=sboyd@kernel.org \
--cc=dave.stevenson@raspberrypi.com \
--cc=dlatypov@google.com \
--cc=dom@raspberrypi.com \
--cc=dri-devel@lists.freedesktop.org \
--cc=kunit-dev@googlegroups.com \
--cc=linux-clk@vger.kernel.org \
--cc=maxime@cerno.tech \
--cc=mturquette@baylibre.com \
--cc=phil@raspberrypi.com \
--cc=tim.gover@raspberrypi.com \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox