Re: [PATCH] staging: mt7621-pinctrl: fix uninitialized variable ngroups

From: Sergio Paracuellos
Date: Sun Nov 11 2018 - 03:03:18 EST


On Sat, Nov 10, 2018 at 11:28:06PM +0000, Colin King wrote:
> From: Colin Ian King <colin.king@xxxxxxxxxxxxx>
>
> Currently the for_each_node_with_property loop us incrementing variable
> ngroups however it was not initialized and hence will contain garbage.
> Fix this by initializing ngroups to zero.
>
> Detected with static analysis with cppcheck:
>
> drivers/staging/mt7621-pinctrl/pinctrl-rt2880.c:89]: (error) Uninitialized
> variable: ngroups
>
> Fixes: e12a1a6e087b ("staging: mt7621-pinctrl: refactor rt2880_pinctrl_dt_node_to_map function")
> Signed-off-by: Colin Ian King <colin.king@xxxxxxxxxxxxx>
> ---
> drivers/staging/mt7621-pinctrl/pinctrl-rt2880.c | 2 +-
> 1 file changed, 1 insertion(+), 1 deletion(-)
>
> diff --git a/drivers/staging/mt7621-pinctrl/pinctrl-rt2880.c b/drivers/staging/mt7621-pinctrl/pinctrl-rt2880.c
> index b8566ed898f1..aa98fbb17013 100644
> --- a/drivers/staging/mt7621-pinctrl/pinctrl-rt2880.c
> +++ b/drivers/staging/mt7621-pinctrl/pinctrl-rt2880.c
> @@ -82,7 +82,7 @@ static int rt2880_pinctrl_dt_node_to_map(struct pinctrl_dev *pctrldev,
> struct property *prop;
> const char *function_name, *group_name;
> int ret;
> - int ngroups;
> + int ngroups = 0;
> unsigned int reserved_maps = 0;
>
> for_each_node_with_property(np_config, "group")
> --
> 2.19.1
>

Thanks, Colin. Looks good.

Reviewed-by: Sergio Paracuellos <sergio.paracuellos@xxxxxxxxx>

Best regards,
Sergio Paracuellos