Re: [PATCH] pinctrl: core: Set ret to 0 when group is skipped
On Fri, Mar 12, 2021 at 8:31 AM Michal Simek wrote: > Static analyzer tool found that the ret variable is not initialized but > code expects ret value >=0 when pinconf is skipped in the first pinmux > loop. The same expectation is for pinmux in a pinconf loop. > That's why initialize ret to 0 to avoid uninitialized ret value in first > loop or reusing ret value from first loop in second. > > Addresses-Coverity: ("Uninitialized variables") > Signed-off-by: Michal Simek > CC: Colin Ian King > CC: Dan Carpenter Patch applied! Yours, Linus Walleij
Re: [PATCH] pinctrl: core: Set ret to 0 when group is skipped
On 12/03/2021 07:31, Michal Simek wrote: > Static analyzer tool found that the ret variable is not initialized but > code expects ret value >=0 when pinconf is skipped in the first pinmux > loop. The same expectation is for pinmux in a pinconf loop. > That's why initialize ret to 0 to avoid uninitialized ret value in first > loop or reusing ret value from first loop in second. > > Addresses-Coverity: ("Uninitialized variables") > Signed-off-by: Michal Simek > CC: Colin Ian King > CC: Dan Carpenter > --- > > drivers/pinctrl/core.c | 2 ++ > 1 file changed, 2 insertions(+) > > diff --git a/drivers/pinctrl/core.c b/drivers/pinctrl/core.c > index f5c32d2a3c91..136c323d855e 100644 > --- a/drivers/pinctrl/core.c > +++ b/drivers/pinctrl/core.c > @@ -1266,6 +1266,7 @@ static int pinctrl_commit_state(struct pinctrl *p, > struct pinctrl_state *state) > break; > case PIN_MAP_TYPE_CONFIGS_PIN: > case PIN_MAP_TYPE_CONFIGS_GROUP: > + ret = 0; > break; > default: > ret = -EINVAL; > @@ -1284,6 +1285,7 @@ static int pinctrl_commit_state(struct pinctrl *p, > struct pinctrl_state *state) > list_for_each_entry(setting, >settings, node) { > switch (setting->type) { > case PIN_MAP_TYPE_MUX_GROUP: > + ret = 0; > break; > case PIN_MAP_TYPE_CONFIGS_PIN: > case PIN_MAP_TYPE_CONFIGS_GROUP: > Thanks Michal, Reviewed-by: Colin Ian King
[PATCH] pinctrl: core: Set ret to 0 when group is skipped
Static analyzer tool found that the ret variable is not initialized but code expects ret value >=0 when pinconf is skipped in the first pinmux loop. The same expectation is for pinmux in a pinconf loop. That's why initialize ret to 0 to avoid uninitialized ret value in first loop or reusing ret value from first loop in second. Addresses-Coverity: ("Uninitialized variables") Signed-off-by: Michal Simek CC: Colin Ian King CC: Dan Carpenter --- drivers/pinctrl/core.c | 2 ++ 1 file changed, 2 insertions(+) diff --git a/drivers/pinctrl/core.c b/drivers/pinctrl/core.c index f5c32d2a3c91..136c323d855e 100644 --- a/drivers/pinctrl/core.c +++ b/drivers/pinctrl/core.c @@ -1266,6 +1266,7 @@ static int pinctrl_commit_state(struct pinctrl *p, struct pinctrl_state *state) break; case PIN_MAP_TYPE_CONFIGS_PIN: case PIN_MAP_TYPE_CONFIGS_GROUP: + ret = 0; break; default: ret = -EINVAL; @@ -1284,6 +1285,7 @@ static int pinctrl_commit_state(struct pinctrl *p, struct pinctrl_state *state) list_for_each_entry(setting, >settings, node) { switch (setting->type) { case PIN_MAP_TYPE_MUX_GROUP: + ret = 0; break; case PIN_MAP_TYPE_CONFIGS_PIN: case PIN_MAP_TYPE_CONFIGS_GROUP: -- 2.30.1