From mboxrd@z Thu Jan 1 00:00:00 1970 From: Bjorn Andersson Subject: Re: [PATCH 6/6] soc: qcom: smem: check sooner in qcom_smem_set_global_partition() Date: Tue, 24 Apr 2018 21:52:59 -0700 Message-ID: <20180425045259.GJ2052@tuxbook-pro> References: <20180410222542.29474-1-elder@linaro.org> <20180410222542.29474-7-elder@linaro.org> Mime-Version: 1.0 Content-Type: text/plain; charset=us-ascii Return-path: Content-Disposition: inline In-Reply-To: <20180410222542.29474-7-elder@linaro.org> Sender: linux-kernel-owner@vger.kernel.org To: Alex Elder Cc: andy.gross@linaro.org, clew@codeaurora.org, aneela@codeaurora.org, david.brown@linaro.org, linux-arm-msm@vger.kernel.org, linux-soc@vger.kernel.org, linux-kernel@vger.kernel.org List-Id: linux-arm-msm@vger.kernel.org On Tue 10 Apr 15:25 PDT 2018, Alex Elder wrote: > There's no sense in scanning the partition table again if we know > the global partition has already been discovered. Check for a > non-null global_partition pointer in qcom_smem_set_global_partition() > immediately. > > Signed-off-by: Alex Elder Reviewed-by: Bjorn Andersson Regards, Bjorn > --- > drivers/soc/qcom/smem.c | 10 +++++----- > 1 file changed, 5 insertions(+), 5 deletions(-) > > diff --git a/drivers/soc/qcom/smem.c b/drivers/soc/qcom/smem.c > index 6e42599b70d4..7d9a43da5084 100644 > --- a/drivers/soc/qcom/smem.c > +++ b/drivers/soc/qcom/smem.c > @@ -364,6 +364,11 @@ static int qcom_smem_alloc_private(struct qcom_smem *smem, > end = phdr_to_last_uncached_entry(phdr); > cached = phdr_to_last_cached_entry(phdr); > > + if (smem->global_partition) { > + dev_err(smem->dev, "Already found the global partition\n"); > + return -EINVAL; > + } > + > while (hdr < end) { > if (hdr->canary != SMEM_PRIVATE_CANARY) > goto bad_canary; > @@ -729,11 +734,6 @@ static int qcom_smem_set_global_partition(struct qcom_smem *smem) > return -EINVAL; > } > > - if (smem->global_partition) { > - dev_err(smem->dev, "Already found the global partition\n"); > - return -EINVAL; > - } > - > header = smem->regions[0].virt_base + le32_to_cpu(entry->offset); > host0 = le16_to_cpu(header->host0); > host1 = le16_to_cpu(header->host1); > -- > 2.14.1 >