]> git.ipfire.org Git - thirdparty/kernel/stable.git/commitdiff
regmap-irq: Add missing kfree()
authorJiasheng Jiang <jiashengjiangcool@gmail.com>
Wed, 5 Feb 2025 00:43:43 +0000 (00:43 +0000)
committerGreg Kroah-Hartman <gregkh@linuxfoundation.org>
Fri, 21 Feb 2025 12:50:05 +0000 (13:50 +0100)
commit 32ffed055dcee17f6705f545b069e44a66067808 upstream.

Add kfree() for "d->main_status_buf" to the error-handling path to prevent
a memory leak.

Fixes: a2d21848d921 ("regmap: regmap-irq: Add main status register support")
Cc: stable@vger.kernel.org # v5.1+
Signed-off-by: Jiasheng Jiang <jiashengjiangcool@gmail.com>
Link: https://patch.msgid.link/20250205004343.14413-1-jiashengjiangcool@gmail.com
Signed-off-by: Mark Brown <broonie@kernel.org>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
drivers/base/regmap/regmap-irq.c

index db19e9c76e4f118d8c895be00d51819cd2411560..dfe0da4ed47e7ef90460abddb802912fdd7ea59e 100644 (file)
@@ -1059,6 +1059,7 @@ err_alloc:
        kfree(d->wake_buf);
        kfree(d->mask_buf_def);
        kfree(d->mask_buf);
+       kfree(d->main_status_buf);
        kfree(d->status_buf);
        kfree(d->status_reg_buf);
        if (d->virt_buf) {
@@ -1139,6 +1140,7 @@ void regmap_del_irq_chip(int irq, struct regmap_irq_chip_data *d)
        kfree(d->wake_buf);
        kfree(d->mask_buf_def);
        kfree(d->mask_buf);
+       kfree(d->main_status_buf);
        kfree(d->status_reg_buf);
        kfree(d->status_buf);
        if (d->config_buf) {