From mboxrd@z Thu Jan 1 00:00:00 1970 From: Boris Brezillon Subject: Re: [PATCH v4 04/35] mtd: rawnand: denali: convert to nand_scan() Date: Wed, 25 Jul 2018 11:51:16 +0200 Message-ID: <20180725115116.1fb38fe3@bbrezillon> References: <20180720151527.16038-1-miquel.raynal@bootlin.com> <20180720151527.16038-5-miquel.raynal@bootlin.com> Mime-Version: 1.0 Content-Type: text/plain; charset=US-ASCII Content-Transfer-Encoding: 7bit Return-path: In-Reply-To: Sender: linux-kernel-owner@vger.kernel.org To: Masahiro Yamada Cc: Miquel Raynal , Alexandre Belloni , Mans Rullgard , Maxime Ripard , Stefan Agner , Linux Kernel Mailing List , linux-mtd , Kamal Dasu , Josh Wu , Marc Gonzalez , Marek Vasut , Chen-Yu Tsai , Broadcom Kernel Feedback List , Sylvain Lemieux , Wenyou Yang , Tudor Ambarus , Vladimir Zapolskiy , Harvey Hunt List-Id: linux-mediatek@lists.infradead.org On Wed, 25 Jul 2018 18:42:44 +0900 Masahiro Yamada 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().