Commit c585da9f authored by Boris Brezillon's avatar Boris Brezillon

mtd: Initialize ->fail_addr early in mtd_erase()

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.
Signed-off-by: default avatarBoris Brezillon <boris.brezillon@bootlin.com>
Reviewed-by: default avatarRichard Weinberger <richard@nod.at>
parent f0a37a8d
...@@ -953,6 +953,8 @@ EXPORT_SYMBOL_GPL(__put_mtd_device); ...@@ -953,6 +953,8 @@ EXPORT_SYMBOL_GPL(__put_mtd_device);
*/ */
int mtd_erase(struct mtd_info *mtd, struct erase_info *instr) int mtd_erase(struct mtd_info *mtd, struct erase_info *instr)
{ {
instr->fail_addr = MTD_FAIL_ADDR_UNKNOWN;
if (!mtd->erasesize || !mtd->_erase) if (!mtd->erasesize || !mtd->_erase)
return -ENOTSUPP; return -ENOTSUPP;
...@@ -961,7 +963,6 @@ int mtd_erase(struct mtd_info *mtd, struct erase_info *instr) ...@@ -961,7 +963,6 @@ int mtd_erase(struct mtd_info *mtd, struct erase_info *instr)
if (!(mtd->flags & MTD_WRITEABLE)) if (!(mtd->flags & MTD_WRITEABLE))
return -EROFS; return -EROFS;
instr->fail_addr = MTD_FAIL_ADDR_UNKNOWN;
if (!instr->len) { if (!instr->len) {
instr->state = MTD_ERASE_DONE; instr->state = MTD_ERASE_DONE;
mtd_erase_callback(instr); mtd_erase_callback(instr);
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment