From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from mail.bootlin.com (mail.bootlin.com [62.4.15.54]) by lists.ozlabs.org (Postfix) with ESMTP id 404BxS0xGjzF0mt for ; Mon, 19 Mar 2018 08:22:45 +1100 (AEDT) Date: Sun, 18 Mar 2018 22:22:31 +0100 From: Boris Brezillon To: David Woodhouse , Brian Norris , Boris Brezillon , Marek Vasut , Richard Weinberger , Cyrille Pitchen , linux-mtd@lists.infradead.org Cc: Joern Engel , Robert Jarzmik , Benjamin Herrenschmidt , Paul Mackerras , Michael Ellerman , Kyungmin Park , Artem Bityutskiy , Solarflare linux maintainers , Edward Cree , Bert Kenward , Greg Kroah-Hartman , linuxppc-dev@lists.ozlabs.org, netdev@vger.kernel.org, devel@driverdev.osuosl.org, Miquel Raynal Subject: Re: [PATCH 1/5] mtd: Initialize ->fail_addr early in mtd_erase() Message-ID: <20180318222231.48533c20@bbrezillon> In-Reply-To: <20180212210311.23244-2-boris.brezillon@bootlin.com> References: <20180212210311.23244-1-boris.brezillon@bootlin.com> <20180212210311.23244-2-boris.brezillon@bootlin.com> MIME-Version: 1.0 Content-Type: text/plain; charset=US-ASCII List-Id: Linux on PowerPC Developers Mail List List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , On Mon, 12 Feb 2018 22:03:07 +0100 Boris Brezillon wrote: > mtd_erase() can return an error before ->fail_addr is initialized to > MTD_FAIL_ADDR_UNKNOWN. Move this initialization at the very beginning > of the function. Applied the patchset after addressing Miquel's comments. > > Signed-off-by: Boris Brezillon > --- > drivers/mtd/mtdcore.c | 3 ++- > 1 file changed, 2 insertions(+), 1 deletion(-) > > diff --git a/drivers/mtd/mtdcore.c b/drivers/mtd/mtdcore.c > index a1c94526fb88..c87859ff338b 100644 > --- a/drivers/mtd/mtdcore.c > +++ b/drivers/mtd/mtdcore.c > @@ -953,6 +953,8 @@ EXPORT_SYMBOL_GPL(__put_mtd_device); > */ > int mtd_erase(struct mtd_info *mtd, struct erase_info *instr) > { > + instr->fail_addr = MTD_FAIL_ADDR_UNKNOWN; > + > if (!mtd->erasesize || !mtd->_erase) > return -ENOTSUPP; > > @@ -961,7 +963,6 @@ int mtd_erase(struct mtd_info *mtd, struct erase_info *instr) > if (!(mtd->flags & MTD_WRITEABLE)) > return -EROFS; > > - instr->fail_addr = MTD_FAIL_ADDR_UNKNOWN; > if (!instr->len) { > instr->state = MTD_ERASE_DONE; > mtd_erase_callback(instr); -- Boris Brezillon, Bootlin (formerly Free Electrons) Embedded Linux and Kernel engineering https://bootlin.com