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 <l...@linaro.org>
Acked-by: Dan Carpenter <dan.carpen...@linaro.org>
Acked-by: MaĆ­ra Canal <mca...@igalia.com>
Cc: Maarten Lankhorst <maarten.lankho...@linux.intel.com>
Cc: David Airlie <airl...@gmail.com>
Cc: Daniel Vetter <dan...@ffwll.ch>
Signed-off-by: Guenter Roeck <li...@roeck-us.net>
---
v2:
- Rebased to v6.9-rc1
- Added Tested-by:, Acked-by:, and Reviewed-by: tags
v3:
- Rebased to v6.9-rc2

 drivers/gpu/drm/tests/drm_rect_test.c | 16 ++++++++++++++++
 1 file changed, 16 insertions(+)

diff --git a/drivers/gpu/drm/tests/drm_rect_test.c 
b/drivers/gpu/drm/tests/drm_rect_test.c
index 76332cd2ead8..66851769ee32 100644
--- a/drivers/gpu/drm/tests/drm_rect_test.c
+++ b/drivers/gpu/drm/tests/drm_rect_test.c
@@ -406,22 +406,38 @@ KUNIT_ARRAY_PARAM(drm_rect_scale, drm_rect_scale_cases, 
drm_rect_scale_case_desc
 
 static void drm_test_rect_calc_hscale(struct kunit *test)
 {
+       DEFINE_SUPPRESSED_WARNING(drm_calc_scale);
        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.
+        */
+       START_SUPPRESSED_WARNING(drm_calc_scale);
        scaling_factor = drm_rect_calc_hscale(&params->src, &params->dst,
                                              params->min_range, 
params->max_range);
+       END_SUPPRESSED_WARNING(drm_calc_scale);
 
        KUNIT_EXPECT_EQ(test, scaling_factor, params->expected_scaling_factor);
 }
 
 static void drm_test_rect_calc_vscale(struct kunit *test)
 {
+       DEFINE_SUPPRESSED_WARNING(drm_calc_scale);
        const struct drm_rect_scale_case *params = test->param_value;
        int scaling_factor;
 
+       /*
+        * drm_rect_calc_vscale() generates a warning backtrace whenever bad
+        * parameters are passed to it. This affects all unit tests with an
+        * error code in expected_scaling_factor.
+        */
+       START_SUPPRESSED_WARNING(drm_calc_scale);
        scaling_factor = drm_rect_calc_vscale(&params->src, &params->dst,
                                              params->min_range, 
params->max_range);
+       END_SUPPRESSED_WARNING(drm_calc_scale);
 
        KUNIT_EXPECT_EQ(test, scaling_factor, params->expected_scaling_factor);
 }
-- 
2.39.2


Reply via email to