summaryrefslogtreecommitdiff
path: root/drivers
diff options
context:
space:
mode:
authorJianglei Nie <niejianglei2021@163.com>2025-11-12 20:22:07 +0100
committerGreg Kroah-Hartman <gregkh@linuxfoundation.org>2025-11-24 17:53:46 +0100
commit47d3949a9b04cbcb0e10abae30c2b53e98706e11 (patch)
tree777749e3e3b7deb66e276c12cf34aee084db9fcf /drivers
parente6ab504633e4c06e35377ecf3c8cbc304de79858 (diff)
staging: fbtft: core: fix potential memory leak in fbtft_probe_common()
fbtft_probe_common() allocates a memory chunk for "info" with fbtft_framebuffer_alloc(). When "display->buswidth == 0" is true, the function returns without releasing the "info", which will lead to a memory leak. Fix it by calling fbtft_framebuffer_release() when "display->buswidth == 0" is true. Fixes: c296d5f9957c ("staging: fbtft: core support") Signed-off-by: Jianglei Nie <niejianglei2021@163.com> Signed-off-by: Andy Shevchenko <andriy.shevchenko@linux.intel.com> Acked-by: Abdun Nihaal <abdun.nihaal@gmail.com> Link: https://patch.msgid.link/20251112192235.2088654-1-andriy.shevchenko@linux.intel.com Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
Diffstat (limited to 'drivers')
-rw-r--r--drivers/staging/fbtft/fbtft-core.c4
1 files changed, 2 insertions, 2 deletions
diff --git a/drivers/staging/fbtft/fbtft-core.c b/drivers/staging/fbtft/fbtft-core.c
index 9e7b84071174..8a5ccc8ae0a1 100644
--- a/drivers/staging/fbtft/fbtft-core.c
+++ b/drivers/staging/fbtft/fbtft-core.c
@@ -1171,8 +1171,8 @@ int fbtft_probe_common(struct fbtft_display *display,
par->pdev = pdev;
if (display->buswidth == 0) {
- dev_err(dev, "buswidth is not set\n");
- return -EINVAL;
+ ret = dev_err_probe(dev, -EINVAL, "buswidth is not set\n");
+ goto out_release;
}
/* write register functions */