On Mon, 07 Apr 2025, Zijun Hu <zijun...@icloud.com> wrote:
> From: Zijun Hu <quic_zij...@quicinc.com>
>
> The actual length of const string "noaccel" is 7, but the strncmp()
> branch in nvidiafb_setup() wrongly hard codes it as 6.
>
> Fix by using actual length 7 as argument of the strncmp().
>
> Signed-off-by: Zijun Hu <quic_zij...@quicinc.com>
> ---
>  drivers/video/fbdev/nvidia/nvidia.c | 2 +-
>  1 file changed, 1 insertion(+), 1 deletion(-)
>
> diff --git a/drivers/video/fbdev/nvidia/nvidia.c 
> b/drivers/video/fbdev/nvidia/nvidia.c
> index 
> 8900f181f1952acd2acc16a6ab49a5a42ec056ac..cfaf9454014d8161bedc3598fb68855e04ea9408
>  100644
> --- a/drivers/video/fbdev/nvidia/nvidia.c
> +++ b/drivers/video/fbdev/nvidia/nvidia.c
> @@ -1484,7 +1484,7 @@ static int nvidiafb_setup(char *options)
>                       flatpanel = 1;
>               } else if (!strncmp(this_opt, "hwcur", 5)) {
>                       hwcur = 1;
> -             } else if (!strncmp(this_opt, "noaccel", 6)) {
> +             } else if (!strncmp(this_opt, "noaccel", 7)) {
>                       noaccel = 1;
>               } else if (!strncmp(this_opt, "noscale", 7)) {
>                       noscale = 1;

A further cleanup could be to replace all of the strncmp's with
str_has_prefix(this_opt, "...") to avoid this class of errors
altogether. It also returns the length of the prefix on match, and that
can be used to drop more magic numbers.

BR,
Jani.

>
> ---
> base-commit: 0af2f6be1b4281385b618cb86ad946eded089ac8
> change-id: 20250407-fix_nvidia-a9d72c98a808
>
> Best regards,

-- 
Jani Nikula, Intel

Reply via email to