Commit 164b50b3 authored by Geert Uytterhoeven's avatar Geert Uytterhoeven Committed by Ulf Hansson
Browse files

mmc: block: Replace "goto retry" by a proper do / while loop

parent 8cb6ed17
Loading
Loading
Loading
Loading
+13 −15
Original line number Diff line number Diff line
@@ -1164,7 +1164,8 @@ static int mmc_blk_issue_discard_rq(struct mmc_queue *mq, struct request *req)
		arg = MMC_TRIM_ARG;
	else
		arg = MMC_ERASE_ARG;
retry:
	do {
		err = 0;
		if (card->quirks & MMC_QUIRK_INAND_CMD38) {
			err = mmc_switch(card, EXT_CSD_CMD_SET_NORMAL,
					 INAND_CMD38_ARG_EXT_CSD,
@@ -1172,13 +1173,10 @@ retry:
					 INAND_CMD38_ARG_TRIM :
					 INAND_CMD38_ARG_ERASE,
					 0);
		if (err)
			goto out;
		}
		if (!err)
			err = mmc_erase(card, from, nr, arg);
out:
	if (err == -EIO && !mmc_blk_reset(md, card->host, type))
		goto retry;
	} while (err == -EIO && !mmc_blk_reset(md, card->host, type));
	if (!err)
		mmc_blk_reset_success(md, type);
fail: