]> git.ipfire.org Git - thirdparty/kernel/stable.git/commitdiff
auxdisplay: hd44780: Fix an API misuse in hd44780.c
authorHaoxiang Li <haoxiang_li2024@163.com>
Mon, 24 Feb 2025 10:15:27 +0000 (18:15 +0800)
committerGreg Kroah-Hartman <gregkh@linuxfoundation.org>
Fri, 2 May 2025 05:50:38 +0000 (07:50 +0200)
[ Upstream commit 9b98a7d2e5f4e2beeff88f6571da0cdc5883c7fb ]

Variable allocated by charlcd_alloc() should be released
by charlcd_free(). The following patch changed kfree() to
charlcd_free() to fix an API misuse.

Fixes: 718e05ed92ec ("auxdisplay: Introduce hd44780_common.[ch]")
Cc: stable@vger.kernel.org
Signed-off-by: Haoxiang Li <haoxiang_li2024@163.com>
Reviewed-by: Geert Uytterhoeven <geert@linux-m68k.org>
Signed-off-by: Andy Shevchenko <andriy.shevchenko@linux.intel.com>
Signed-off-by: Sasha Levin <sashal@kernel.org>
drivers/auxdisplay/hd44780.c

index 7ac0b1b1d5482fc788512bf3eec179fc563f8cd3..8b690f59df27d6667ea11caf7b1a483b33497715 100644 (file)
@@ -313,7 +313,7 @@ static int hd44780_probe(struct platform_device *pdev)
 fail3:
        kfree(hd);
 fail2:
-       kfree(lcd);
+       charlcd_free(lcd);
 fail1:
        kfree(hdc);
        return ret;
@@ -328,7 +328,7 @@ static void hd44780_remove(struct platform_device *pdev)
        kfree(hdc->hd44780);
        kfree(lcd->drvdata);
 
-       kfree(lcd);
+       charlcd_free(lcd);
 }
 
 static const struct of_device_id hd44780_of_match[] = {