OSDN Git Service

soc: qcom: smem: fix off-by-one error in qcom_smem_alloc_private()
authorAlex Elder <elder@linaro.org>
Tue, 10 Apr 2018 22:25:40 +0000 (17:25 -0500)
committerAndy Gross <andy.gross@linaro.org>
Fri, 25 May 2018 20:53:55 +0000 (15:53 -0500)
It's OK if the space for a newly-allocated uncached entry actually
touches the free cached space boundary.  It's only a problem if it
would cross it.

Signed-off-by: Alex Elder <elder@linaro.org>
Reviewed-by: Bjorn Andersson <bjorn.andersson@linaro.org>
Signed-off-by: Andy Gross <andy.gross@linaro.org>
drivers/soc/qcom/smem.c

index 82f0908..0ed2630 100644 (file)
@@ -375,7 +375,7 @@ static int qcom_smem_alloc_private(struct qcom_smem *smem,
 
        /* Check that we don't grow into the cached region */
        alloc_size = sizeof(*hdr) + ALIGN(size, 8);
-       if ((void *)hdr + alloc_size >= cached) {
+       if ((void *)hdr + alloc_size > cached) {
                dev_err(smem->dev, "Out of memory\n");
                return -ENOSPC;
        }