On Mon, Apr 20, 2026 at 4:47 PM Peter Zijlstra <[email protected]> wrote: > > On Mon, Apr 20, 2026 at 02:28:06PM +0200, Albert Esteve wrote: > > From: Guenter Roeck <[email protected]> > > > > The drm_test_rect_calc_hscale and drm_test_rect_calc_vscale unit tests > > intentionally trigger warning backtraces by providing bad parameters to > > the tested functions. What is tested is the return value, not the existence > > of a warning backtrace. Suppress the backtraces to avoid clogging the > > kernel log and distraction from real problems. > > > > Tested-by: Linux Kernel Functional Testing <[email protected]> > > Acked-by: Dan Carpenter <[email protected]> > > Acked-by: Maíra Canal <[email protected]> > > Cc: Maarten Lankhorst <[email protected]> > > Cc: David Airlie <[email protected]> > > Cc: Daniel Vetter <[email protected]> > > Signed-off-by: Guenter Roeck <[email protected]> > > Signed-off-by: Alessandro Carminati <[email protected]> > > Signed-off-by: Albert Esteve <[email protected]> > > --- > > drivers/gpu/drm/tests/drm_rect_test.c | 14 ++++++++++++++ > > 1 file changed, 14 insertions(+) > > > > diff --git a/drivers/gpu/drm/tests/drm_rect_test.c > > b/drivers/gpu/drm/tests/drm_rect_test.c > > index 17e1f34b76101..1dd7d819165e7 100644 > > --- a/drivers/gpu/drm/tests/drm_rect_test.c > > +++ b/drivers/gpu/drm/tests/drm_rect_test.c > > @@ -409,8 +409,15 @@ static void drm_test_rect_calc_hscale(struct kunit > > *test) > > const struct drm_rect_scale_case *params = test->param_value; > > int scaling_factor; > > > > + /* > > + * drm_rect_calc_hscale() generates a warning backtrace whenever bad > > + * parameters are passed to it. This affects all unit tests with an > > + * error code in expected_scaling_factor. > > + */ > > + KUNIT_START_SUPPRESSED_WARNING(test); > > scaling_factor = drm_rect_calc_hscale(¶ms->src, ¶ms->dst, > > params->min_range, > > params->max_range); > > + KUNIT_END_SUPPRESSED_WARNING(test); > > Would not something like: > > scoped_kunit_suppress() { > scaling_factor = drm_rect_calc_hscale(¶ms->src, > ¶ms->dst, > params->min_range, > params->max_range); > } > > be better?
Since KUnit already has a few macros in its API it didn't occur to me. Good idea, I like it. And I guess the scope approach matches well with your __cleanup comment in the first patch. If no one opposes, I will work toward that pattern for the next version. > > Also, how can you stand all this screaming in the code? > Again, KUnit already contains many macros, so this use didn't register as such. Now I will not be able to unsee it.

