[PATCH -next 4/4] mtd: tests: incorporate error message for mtdtest_write()
Akinobu Mita
akinobu.mita at gmail.com
Thu Aug 15 09:55:09 EDT 2013
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 <akinobu.mita at gmail.com>
Cc: Brian Norris <computersforpeace at gmail.com>
Cc: Vikram Narayanan <vikram186 at gmail.com>
Cc: Adrian Hunter <adrian.hunter at intel.com>
Cc: Artem Bityutskiy <dedekind1 at gmail.com>
Cc: David Woodhouse <dwmw2 at infradead.org>
Cc: linux-mtd at lists.infradead.org
---
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 4c2e3f0..c818a63 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 5a8c858..3cd3aab 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 9e8329c..44b96e9 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 d1a3853..87ff6a2 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 6c9e23f..c9d42cc 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;
--
1.8.3.1
More information about the linux-mtd
mailing list