regmap-irq: Add missing kfree()
authorJiasheng Jiang <jiashengjiangcool@gmail.com>
Wed, 5 Feb 2025 00:43:43 +0000 (00:43 +0000)
committerMark Brown <broonie@kernel.org>
Wed, 5 Feb 2025 11:55:42 +0000 (11:55 +0000)
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>
drivers/base/regmap/regmap-irq.c

index 0bcd81389a29f8b39425f8ffe9fa3c94ec1eeead..978613407ea3cfd8cfecf993b91213f5b0e097cd 100644 (file)
@@ -906,6 +906,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->config_buf) {
@@ -981,6 +982,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) {