From f50f25e9ecf5194a624e5e8cd3f3f2e3249b479c Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Per=20=C3=85strand?= Date: Wed, 18 May 2022 09:12:15 +0200 Subject: Check size of buffer before allocating Avoid undefined behaviour from calling dma_alloc_coherent with requested size=0 as reported by UBSAN. Change-Id: I1732759464f1d88259edeea099b1729f4ae6b86f --- kernel/ethosu_buffer.c | 3 +++ 1 file changed, 3 insertions(+) diff --git a/kernel/ethosu_buffer.c b/kernel/ethosu_buffer.c index cad73b2..4f70f1d 100644 --- a/kernel/ethosu_buffer.c +++ b/kernel/ethosu_buffer.c @@ -222,6 +222,9 @@ int ethosu_buffer_create(struct ethosu_device *edev, struct ethosu_buffer *buf; int ret = -ENOMEM; + if (!capacity) + return -EINVAL; + buf = devm_kzalloc(edev->dev, sizeof(*buf), GFP_KERNEL); if (!buf) return -ENOMEM; -- cgit v1.2.1