[PATCH] siox: fix memory leak of master buffer on device release

From: Haotian Zhang

Date: Fri Oct 09 2026 - 00:57:12 EST


siox_device_add() grows smaster->buf with krealloc() when the first
device is added, but the buffer is never freed. siox_master_release()
only frees the siox_master structure itself, so every unregister of a
master that had at least one device leaks its transfer buffer.

Release smaster->buf in siox_master_release().

Fixes: bbecb07fa0af ("siox: new driver framework for eckelmann SIOX")
Assisted-by: DeepSeek-V4.1-Flash
Signed-off-by: Haotian Zhang <vulab@xxxxxxxxxxx>
---
drivers/siox/siox-core.c | 1 +
1 file changed, 1 insertion(+)

diff --git a/drivers/siox/siox-core.c b/drivers/siox/siox-core.c
index 3e8f3b6a4555..147dd1a3e146 100644
--- a/drivers/siox/siox-core.c
+++ b/drivers/siox/siox-core.c
@@ -673,6 +673,7 @@ static void siox_master_release(struct device *dev)
{
struct siox_master *smaster = to_siox_master(dev);

+ kfree(smaster->buf);
kfree(smaster);
}

--
2.25.1