From 8a9f4aa3ac7560efcb242b3d1a31b1d804106f12 Mon Sep 17 00:00:00 2001 From: Akinobu Mita Date: Thu, 15 Aug 2013 22:55:09 +0900 Subject: [PATCH] mtd: tests: incorporate error message for mtdtest_write() All callers of mtdtest_write() print the same error message on failure. This incorporates the error message to mtdtest_write() and removes them from the callers. Signed-off-by: Akinobu Mita Signed-off-by: Artem Bityutskiy Signed-off-by: David Woodhouse --- drivers/mtd/tests/mtd_test.c | 2 ++ drivers/mtd/tests/nandbiterrs.c | 8 +------- drivers/mtd/tests/pagetest.c | 23 ++++------------------- drivers/mtd/tests/speedtest.c | 24 ++++-------------------- drivers/mtd/tests/stresstest.c | 5 +---- 5 files changed, 12 insertions(+), 50 deletions(-) diff --git a/drivers/mtd/tests/mtd_test.c b/drivers/mtd/tests/mtd_test.c index 4c2e3f0bb953..c818a63532e7 100644 --- a/drivers/mtd/tests/mtd_test.c +++ b/drivers/mtd/tests/mtd_test.c @@ -107,6 +107,8 @@ int mtdtest_write(struct mtd_info *mtd, loff_t addr, size_t size, err = mtd_write(mtd, addr, size, &written, buf); if (!err && written != size) err = -EIO; + if (err) + pr_err("error: write failed at %#llx\n", addr); return err; } diff --git a/drivers/mtd/tests/nandbiterrs.c b/drivers/mtd/tests/nandbiterrs.c index 5a8c8584112d..3cd3aabbe1cd 100644 --- a/drivers/mtd/tests/nandbiterrs.c +++ b/drivers/mtd/tests/nandbiterrs.c @@ -102,16 +102,10 @@ static uint8_t hash(unsigned offset) /* Writes wbuffer to page */ static int write_page(int log) { - int err; - if (log) pr_info("write_page\n"); - err = mtdtest_write(mtd, offset, mtd->writesize, wbuffer); - if (err) - pr_err("error: write failed at %#llx\n", (long long)offset); - - return err; + return mtdtest_write(mtd, offset, mtd->writesize, wbuffer); } /* Re-writes the data area while leaving the OOB alone. */ diff --git a/drivers/mtd/tests/pagetest.c b/drivers/mtd/tests/pagetest.c index 9e8329c5d96d..44b96e999ad4 100644 --- a/drivers/mtd/tests/pagetest.c +++ b/drivers/mtd/tests/pagetest.c @@ -52,17 +52,11 @@ static struct rnd_state rnd_state; static int write_eraseblock(int ebnum) { - int err; loff_t addr = ebnum * mtd->erasesize; prandom_bytes_state(&rnd_state, writebuf, mtd->erasesize); cond_resched(); - err = mtdtest_write(mtd, addr, mtd->erasesize, writebuf); - if (err) - pr_err("error: write failed at %#llx\n", - (long long)addr); - - return err; + return mtdtest_write(mtd, addr, mtd->erasesize, writebuf); } static int verify_eraseblock(int ebnum) @@ -232,11 +226,8 @@ static int erasecrosstest(void) prandom_bytes_state(&rnd_state, writebuf, pgsize); strcpy(writebuf, "There is no data like this!"); err = mtdtest_write(mtd, addr0, pgsize, writebuf); - if (err) { - pr_info("error: write failed at %#llx\n", - (long long)addr0); + if (err) return err; - } pr_info("reading 1st page of block %d\n", ebnum); memset(readbuf, 0, pgsize); @@ -260,11 +251,8 @@ static int erasecrosstest(void) prandom_bytes_state(&rnd_state, writebuf, pgsize); strcpy(writebuf, "There is no data like this!"); err = mtdtest_write(mtd, addr0, pgsize, writebuf); - if (err) { - pr_err("error: write failed at %#llx\n", - (long long)addr0); + if (err) return err; - } pr_info("erasing block %d\n", ebnum2); err = mtdtest_erase_eraseblock(mtd, ebnum2); @@ -311,11 +299,8 @@ static int erasetest(void) pr_info("writing 1st page of block %d\n", ebnum); prandom_bytes_state(&rnd_state, writebuf, pgsize); err = mtdtest_write(mtd, addr0, pgsize, writebuf); - if (err) { - pr_err("error: write failed at %#llx\n", - (long long)addr0); + if (err) return err; - } pr_info("erasing block %d\n", ebnum); err = mtdtest_erase_eraseblock(mtd, ebnum); diff --git a/drivers/mtd/tests/speedtest.c b/drivers/mtd/tests/speedtest.c index d1a38530612e..87ff6a29f84e 100644 --- a/drivers/mtd/tests/speedtest.c +++ b/drivers/mtd/tests/speedtest.c @@ -80,14 +80,9 @@ static int multiblock_erase(int ebnum, int blocks) static int write_eraseblock(int ebnum) { - int err; loff_t addr = ebnum * mtd->erasesize; - err = mtdtest_write(mtd, addr, mtd->erasesize, iobuf); - if (err) - pr_err("error: write failed at %#llx\n", addr); - - return err; + return mtdtest_write(mtd, addr, mtd->erasesize, iobuf); } static int write_eraseblock_by_page(int ebnum) @@ -98,11 +93,8 @@ static int write_eraseblock_by_page(int ebnum) for (i = 0; i < pgcnt; i++) { err = mtdtest_write(mtd, addr, pgsize, buf); - if (err) { - pr_err("error: write failed at %#llx\n", - addr); + if (err) break; - } addr += pgsize; buf += pgsize; } @@ -119,21 +111,13 @@ static int write_eraseblock_by_2pages(int ebnum) for (i = 0; i < n; i++) { err = mtdtest_write(mtd, addr, sz, buf); - if (err) { - pr_err("error: write failed at %#llx\n", - addr); + if (err) return err; - } addr += sz; buf += sz; } - if (pgcnt % 2) { + if (pgcnt % 2) err = mtdtest_write(mtd, addr, pgsize, buf); - if (err) { - pr_err("error: write failed at %#llx\n", - addr); - } - } return err; } diff --git a/drivers/mtd/tests/stresstest.c b/drivers/mtd/tests/stresstest.c index 6c9e23f40cbc..c9d42cc2df1b 100644 --- a/drivers/mtd/tests/stresstest.c +++ b/drivers/mtd/tests/stresstest.c @@ -126,11 +126,8 @@ static int do_write(void) } addr = eb * mtd->erasesize + offs; err = mtdtest_write(mtd, addr, len, writebuf); - if (unlikely(err)) { - pr_err("error: write failed at 0x%llx\n", - (long long)addr); + if (unlikely(err)) return err; - } offs += len; while (offs > mtd->erasesize) { offsets[eb++] = mtd->erasesize; -- 2.11.0