Message ID | 20190221124036.30535-3-rplsssn@codeaurora.org (mailing list archive) |
---|---|
State | New, archived |
Headers | show |
Series | drivers: qcom: Fixes in RPMh driver | expand |
On Thu, Feb 21 2019 at 05:42 -0700, Raju P.L.S.S.S.N wrote: >From: Maulik Shah <mkshah@codeaurora.org> > >The return index value from bitmap_find_next_zero_area can be higher >than available slot. So correct the check to return error in such case. > >Signed-off-by: Maulik Shah <mkshah@codeaurora.org> >Signed-off-by: Raju P.L.S.S.S.N <rplsssn@codeaurora.org> Reviewed-by: Lina Iyer <ilina@codeaurora.org> >--- > drivers/soc/qcom/rpmh-rsc.c | 2 +- > 1 file changed, 1 insertion(+), 1 deletion(-) > >diff --git a/drivers/soc/qcom/rpmh-rsc.c b/drivers/soc/qcom/rpmh-rsc.c >index 10b3102298c7..3ff3bebd4d71 100644 >--- a/drivers/soc/qcom/rpmh-rsc.c >+++ b/drivers/soc/qcom/rpmh-rsc.c >@@ -491,7 +491,7 @@ static int find_slots(struct tcs_group *tcs, const struct tcs_request *msg, > do { > slot = bitmap_find_next_zero_area(tcs->slots, MAX_TCS_SLOTS, > i, msg->num_cmds, 0); >- if (slot == tcs->num_tcs * tcs->ncpt) >+ if (slot >= tcs->num_tcs * tcs->ncpt) > return -ENOMEM; > i += tcs->ncpt; > } while (slot + msg->num_cmds - 1 >= i); >-- >QUALCOMM INDIA, on behalf of Qualcomm Innovation Center, Inc. is a member >of the Code Aurora Forum, hosted by The Linux Foundation. >
diff --git a/drivers/soc/qcom/rpmh-rsc.c b/drivers/soc/qcom/rpmh-rsc.c index 10b3102298c7..3ff3bebd4d71 100644 --- a/drivers/soc/qcom/rpmh-rsc.c +++ b/drivers/soc/qcom/rpmh-rsc.c @@ -491,7 +491,7 @@ static int find_slots(struct tcs_group *tcs, const struct tcs_request *msg, do { slot = bitmap_find_next_zero_area(tcs->slots, MAX_TCS_SLOTS, i, msg->num_cmds, 0); - if (slot == tcs->num_tcs * tcs->ncpt) + if (slot >= tcs->num_tcs * tcs->ncpt) return -ENOMEM; i += tcs->ncpt; } while (slot + msg->num_cmds - 1 >= i);