2021-11-24 03:04:42

by CGEL

[permalink] [raw]
Subject: [PATCH] drm/amd/display: fix application of sizeof to pointer

From: Lv Ruyi <[email protected]>

Both of split and merge are pointers, not arrays.

Reported-by: Zeal Robot <[email protected]>
Signed-off-by: Lv Ruyi <[email protected]>
---
drivers/gpu/drm/amd/display/dc/dml/dml_wrapper.c | 4 ++--
1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/drivers/gpu/drm/amd/display/dc/dml/dml_wrapper.c b/drivers/gpu/drm/amd/display/dc/dml/dml_wrapper.c
index ece34b0b8a46..91810aaee5a3 100644
--- a/drivers/gpu/drm/amd/display/dc/dml/dml_wrapper.c
+++ b/drivers/gpu/drm/amd/display/dc/dml/dml_wrapper.c
@@ -1223,8 +1223,8 @@ static void dml_full_validate_bw_helper(struct dc *dc,
*pipe_cnt = dml_populate_dml_pipes_from_context(dc, context, pipes, false);
*vlevel = dml_get_voltage_level(&context->bw_ctx.dml, pipes, *pipe_cnt);
if (*vlevel < context->bw_ctx.dml.soc.num_states) {
- memset(split, 0, sizeof(split));
- memset(merge, 0, sizeof(merge));
+ memset(split, 0, MAX_PIPES * sizeof(*split));
+ memset(merge, 0, MAX_PIPES * sizeof(*merge));
*vlevel = dml_validate_apply_pipe_split_flags(dc, context, *vlevel, split, merge);
}

--
2.25.1



2021-11-25 16:37:36

by Rodrigo Siqueira Jordao

[permalink] [raw]
Subject: Re: [PATCH] drm/amd/display: fix application of sizeof to pointer



On 2021-11-23 10:04 p.m., [email protected] wrote:
> From: Lv Ruyi <[email protected]>
>
> Both of split and merge are pointers, not arrays.
>
> Reported-by: Zeal Robot <[email protected]>
> Signed-off-by: Lv Ruyi <[email protected]>
> ---
> drivers/gpu/drm/amd/display/dc/dml/dml_wrapper.c | 4 ++--
> 1 file changed, 2 insertions(+), 2 deletions(-)
>
> diff --git a/drivers/gpu/drm/amd/display/dc/dml/dml_wrapper.c b/drivers/gpu/drm/amd/display/dc/dml/dml_wrapper.c
> index ece34b0b8a46..91810aaee5a3 100644
> --- a/drivers/gpu/drm/amd/display/dc/dml/dml_wrapper.c
> +++ b/drivers/gpu/drm/amd/display/dc/dml/dml_wrapper.c
> @@ -1223,8 +1223,8 @@ static void dml_full_validate_bw_helper(struct dc *dc,
> *pipe_cnt = dml_populate_dml_pipes_from_context(dc, context, pipes, false);
> *vlevel = dml_get_voltage_level(&context->bw_ctx.dml, pipes, *pipe_cnt);
> if (*vlevel < context->bw_ctx.dml.soc.num_states) {
> - memset(split, 0, sizeof(split));
> - memset(merge, 0, sizeof(merge));
> + memset(split, 0, MAX_PIPES * sizeof(*split));
> + memset(merge, 0, MAX_PIPES * sizeof(*merge));
> *vlevel = dml_validate_apply_pipe_split_flags(dc, context, *vlevel, split, merge);
> }
>
>
Nice catch!

Reviewed-by: Rodrigo Siqueira <[email protected]>

and applied to amd-staging-drm-next

Thanks
Siqueira