diff mbox series

mailbox: arm_mhuv2: Skip calling kfree() with invalid pointer

Message ID 0a3813079e349d4871c85d0015b9cf16fdbb0dea.1613978176.git.viresh.kumar@linaro.org
State Accepted
Commit 6b50df2b8c208a04d44b8df5b7baaf668ceb8fc3
Headers show
Series mailbox: arm_mhuv2: Skip calling kfree() with invalid pointer | expand

Commit Message

Viresh Kumar Feb. 22, 2021, 7:18 a.m. UTC
It is possible that 'data' passed to kfree() is set to a error value
instead of allocated space. Make sure it doesn't get called with invalid
pointer.

Fixes: 5a6338cce9f4 ("mailbox: arm_mhuv2: Add driver")
Cc: v5.11 <stable@vger.kernel.org> # v5.11
Reported-by: kernel test robot <lkp@intel.com>
Reported-by: Dan Carpenter <dan.carpenter@oracle.com>
Signed-off-by: Viresh Kumar <viresh.kumar@linaro.org>

---
 drivers/mailbox/arm_mhuv2.c | 4 +++-
 1 file changed, 3 insertions(+), 1 deletion(-)

-- 
2.25.0.rc1.19.g042ed3e048af
diff mbox series

Patch

diff --git a/drivers/mailbox/arm_mhuv2.c b/drivers/mailbox/arm_mhuv2.c
index cdfb1939fabf..d997f8ebfa98 100644
--- a/drivers/mailbox/arm_mhuv2.c
+++ b/drivers/mailbox/arm_mhuv2.c
@@ -699,7 +699,9 @@  static irqreturn_t mhuv2_receiver_interrupt(int irq, void *arg)
 		ret = IRQ_HANDLED;
 	}
 
-	kfree(data);
+	if (!IS_ERR(data))
+		kfree(data);
+
 	return ret;
 }