On Wed, 25 Jul 2018 18:42:44 +0900 Masahiro Yamada <[email protected]> wrote:
>
> You need to remove kfree(denali->buf)
> from denali_remove(), right?
Absolutely.
>
> void denali_remove(struct denali_nand_info *denali)
> {
> struct mtd_info *mtd = nand_to_mtd(&denali->nand);
>
> nand_release(mtd);
> kfree(denali->buf); <---- REMOVE !!
> denali_disable_irq(denali);
> }
>
>
> Otherwise, denali_remove() will free denali->buf twice
> because kfree(denali->buf) is called from denali_detach_chip().

