[PATCH] drm/amd/display: Don't check for NULL divisor in fixpt code

Alex Deucher alexdeucher at gmail.com
Tue Apr 29 18:06:17 UTC 2025


On Mon, Apr 28, 2025 at 5:43 PM Harry Wentland <harry.wentland at amd.com> wrote:
>
> [Why]
> We check for a NULL divisor but don't act on it.
> This check does nothing other than throw a warning.
> It does confuse static checkers though:
> See https://lkml.org/lkml/2025/4/26/371
>
> [How]
> Drop the ASSERTs in both DC and SPL variants.
>
> Signed-off-by: Harry Wentland <harry.wentland at amd.com>
> Cc: Linus Torvalds <torvalds at linux-foundation.org>
> Cc: Leo Li <sunpeng.li at amd.com>
> Cc: Alex Deucher <alexander.deucher at amd.com>

Maybe add Fixes tags for the original patches which added these?

Acked-by: Alex Deucher <alexander.deucher at amd.com>

> ---
>  drivers/gpu/drm/amd/display/dc/basics/fixpt31_32.c   | 5 -----
>  drivers/gpu/drm/amd/display/dc/sspl/spl_fixpt31_32.c | 4 ----
>  2 files changed, 9 deletions(-)
>
> diff --git a/drivers/gpu/drm/amd/display/dc/basics/fixpt31_32.c b/drivers/gpu/drm/amd/display/dc/basics/fixpt31_32.c
> index 88d3f9d7dd55..452206b5095e 100644
> --- a/drivers/gpu/drm/amd/display/dc/basics/fixpt31_32.c
> +++ b/drivers/gpu/drm/amd/display/dc/basics/fixpt31_32.c
> @@ -51,8 +51,6 @@ static inline unsigned long long complete_integer_division_u64(
>  {
>         unsigned long long result;
>
> -       ASSERT(divisor);
> -
>         result = div64_u64_rem(dividend, divisor, remainder);
>
>         return result;
> @@ -213,9 +211,6 @@ struct fixed31_32 dc_fixpt_recip(struct fixed31_32 arg)
>          * @note
>          * Good idea to use Newton's method
>          */
> -
> -       ASSERT(arg.value);
> -
>         return dc_fixpt_from_fraction(
>                 dc_fixpt_one.value,
>                 arg.value);
> diff --git a/drivers/gpu/drm/amd/display/dc/sspl/spl_fixpt31_32.c b/drivers/gpu/drm/amd/display/dc/sspl/spl_fixpt31_32.c
> index 52d97918a3bd..ebf0287417e0 100644
> --- a/drivers/gpu/drm/amd/display/dc/sspl/spl_fixpt31_32.c
> +++ b/drivers/gpu/drm/amd/display/dc/sspl/spl_fixpt31_32.c
> @@ -29,8 +29,6 @@ static inline unsigned long long spl_complete_integer_division_u64(
>  {
>         unsigned long long result;
>
> -       SPL_ASSERT(divisor);
> -
>         result = spl_div64_u64_rem(dividend, divisor, remainder);
>
>         return result;
> @@ -196,8 +194,6 @@ struct spl_fixed31_32 spl_fixpt_recip(struct spl_fixed31_32 arg)
>          * Good idea to use Newton's method
>          */
>
> -       SPL_ASSERT(arg.value);
> -
>         return spl_fixpt_from_fraction(
>                 spl_fixpt_one.value,
>                 arg.value);
> --
> 2.49.0
>


More information about the amd-gfx mailing list