[PATCH] mtd: spinand: fix memory leak of ECC engine conf

Miquel Raynal miquel.raynal at bootlin.com
Wed Jun 18 02:10:05 PDT 2025


Hi Pablo,

On 09/06/2025 at 20:02:08 +02, Pablo MARTIN-GOMEZ <pmartin-gomez at freebox.fr> wrote:

> Memory allocated for the ECC engine conf is not released during spinand
> cleanup. Below kmemleak trace is seen for this memory leak:
>
> unreferenced object 0xffffff80064f00e0 (size 8):
>   comm "swapper/0", pid 1, jiffies 4294937458
>   hex dump (first 8 bytes):
>     00 00 00 00 00 00 00 00                          ........
>   backtrace (crc 0):
>     kmemleak_alloc+0x30/0x40
>     __kmalloc_cache_noprof+0x208/0x3c0
>     spinand_ondie_ecc_init_ctx+0x114/0x200
>     nand_ecc_init_ctx+0x70/0xa8
>     nanddev_ecc_engine_init+0xec/0x27c
>     spinand_probe+0xa2c/0x1620
>     spi_mem_probe+0x130/0x21c
>     spi_probe+0xf0/0x170
>     really_probe+0x17c/0x6e8
>     __driver_probe_device+0x17c/0x21c
>     driver_probe_device+0x58/0x180
>     __device_attach_driver+0x15c/0x1f8
>     bus_for_each_drv+0xec/0x150
>     __device_attach+0x188/0x24c
>     device_initial_probe+0x10/0x20
>     bus_probe_device+0x11c/0x160
>
> Fix the leak by calling nanddev_ecc_engine_cleanup() inside
> spinand_cleanup().
>
> Signed-off-by: Pablo Martin-Gomez <pmartin-gomez at freebox.fr>

This patch no longer applies on v6.16-rc1, can you please rebase and
resend ?

Thanks,
Miquèl



More information about the linux-mtd mailing list