Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit bcd53f85 authored by Stephen Boyd's avatar Stephen Boyd Committed by Linus Walleij
Browse files

pinctrl: qcom: Don't iterate past end of function array



Timur reports that this code crashes if nfunctions is 0. Fix the
loop iteration to only consider valid elements of the functions
array.

Reported-by: default avatarTimur Tabi <timur@codeaurora.org>
Cc: Pramod Gurav <pramod.gurav@smartplayin.com>
Cc: Bjorn Andersson <bjorn.andersson@sonymobile.com>
Cc: Ivan T. Ivanov <iivanov@mm-sol.com>
Cc: Andy Gross <agross@codeaurora.org>
Fixes: 32745581 "pinctrl: qcom: Add support for reset for apq8064"
Signed-off-by: default avatarStephen Boyd <sboyd@codeaurora.org>
Signed-off-by: default avatarLinus Walleij <linus.walleij@linaro.org>
parent 41f632fe
Loading
Loading
Loading
Loading
+2 −2
Original line number Original line Diff line number Diff line
@@ -865,10 +865,10 @@ static int msm_ps_hold_restart(struct notifier_block *nb, unsigned long action,


static void msm_pinctrl_setup_pm_reset(struct msm_pinctrl *pctrl)
static void msm_pinctrl_setup_pm_reset(struct msm_pinctrl *pctrl)
{
{
	int i = 0;
	int i;
	const struct msm_function *func = pctrl->soc->functions;
	const struct msm_function *func = pctrl->soc->functions;


	for (; i <= pctrl->soc->nfunctions; i++)
	for (i = 0; i < pctrl->soc->nfunctions; i++)
		if (!strcmp(func[i].name, "ps_hold")) {
		if (!strcmp(func[i].name, "ps_hold")) {
			pctrl->restart_nb.notifier_call = msm_ps_hold_restart;
			pctrl->restart_nb.notifier_call = msm_ps_hold_restart;
			pctrl->restart_nb.priority = 128;
			pctrl->restart_nb.priority = 128;