Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit 9cb93fbb authored by Brian Norris's avatar Brian Norris Committed by David Woodhouse
Browse files

mtd: mtdoops: refactor loop



We can clean up the loop logic a bit, here. This refactoring was enabled
in part by:

 Commit bb4a0986 [mtdoops: clean-up new MTD API usage]

Signed-off-by: default avatarBrian Norris <computersforpeace@gmail.com>
Signed-off-by: default avatarArtem Bityutskiy <artem.bityutskiy@linux.intel.com>
Signed-off-by: default avatarDavid Woodhouse <David.Woodhouse@intel.com>
parent d2d48480
Loading
Loading
Loading
Loading
+6 −8
Original line number Diff line number Diff line
@@ -169,14 +169,7 @@ static void mtdoops_workfunc_erase(struct work_struct *work)
			cxt->nextpage = 0;
	}

	while (1) {
		ret = mtd_block_isbad(mtd, cxt->nextpage * record_size);
		if (!ret)
			break;
		if (ret < 0) {
			printk(KERN_ERR "mtdoops: block_isbad failed, aborting\n");
			return;
		}
	while ((ret = mtd_block_isbad(mtd, cxt->nextpage * record_size)) > 0) {
badblock:
		printk(KERN_WARNING "mtdoops: bad block at %08lx\n",
		       cxt->nextpage * record_size);
@@ -190,6 +183,11 @@ static void mtdoops_workfunc_erase(struct work_struct *work)
		}
	}

	if (ret < 0) {
		printk(KERN_ERR "mtdoops: mtd_block_isbad failed, aborting\n");
		return;
	}

	for (j = 0, ret = -1; (j < 3) && (ret < 0); j++)
		ret = mtdoops_erase_block(cxt, cxt->nextpage * record_size);