mtd: rawnand: atmel: Fix possible memory leak
authorMiquel Raynal <miquel.raynal@bootlin.com>
Tue, 1 Oct 2024 20:31:49 +0000 (22:31 +0200)
committerMiquel Raynal <miquel.raynal@bootlin.com>
Mon, 21 Oct 2024 09:24:28 +0000 (11:24 +0200)
commit6d734f1bfc336aaea91313a5632f2f197608fadd
treedb3b50bca4760a7509bd85002478b390a958767f
parent8ab1b51fa45e29edcbd887208f046a2af0e92a08
mtd: rawnand: atmel: Fix possible memory leak

The pmecc "user" structure is allocated in atmel_pmecc_create_user() and
was supposed to be freed with atmel_pmecc_destroy_user(), but this other
helper is never called. One solution would be to find the proper
location to call the destructor, but the trend today is to switch to
device managed allocations, which in this case fits pretty well.

Replace kzalloc() by devm_kzalloc() and drop the destructor entirely.

Reported-by: "Dr. David Alan Gilbert" <linux@treblig.org>
Closes: https://lore.kernel.org/all/ZvmIvRJCf6VhHvpo@gallifrey/
Fixes: f88fc122cc34 ("mtd: nand: Cleanup/rework the atmel_nand driver")
Signed-off-by: Miquel Raynal <miquel.raynal@bootlin.com>
Link: https://lore.kernel.org/linux-mtd/20241001203149.387655-1-miquel.raynal@bootlin.com
drivers/mtd/nand/raw/atmel/pmecc.c
drivers/mtd/nand/raw/atmel/pmecc.h