Commit 04810274 authored by Vikram Narayanan's avatar Vikram Narayanan Committed by Artem Bityutskiy

mtd: mtd_oobtest: printk -> pr_{info,err,crit}

Use pr_info() and pr_err() while defining pr_fmt(). This saves a few
characters, joins a few lines, and makes the code a little more readable
(and grep-able).
Signed-off-by: default avatarBrian Norris <computersforpeace@gmail.com>
Signed-off-by: default avatarVikram Narayanan <vikram186@gmail.com>
Signed-off-by: default avatarArtem Bityutskiy <artem.bityutskiy@linux.intel.com>
parent 95637c3a
...@@ -19,6 +19,8 @@ ...@@ -19,6 +19,8 @@
* Author: Adrian Hunter <ext-adrian.hunter@nokia.com> * Author: Adrian Hunter <ext-adrian.hunter@nokia.com>
*/ */
#define pr_fmt(fmt) KBUILD_MODNAME ": " fmt
#include <asm/div64.h> #include <asm/div64.h>
#include <linux/init.h> #include <linux/init.h>
#include <linux/module.h> #include <linux/module.h>
...@@ -28,8 +30,6 @@ ...@@ -28,8 +30,6 @@
#include <linux/slab.h> #include <linux/slab.h>
#include <linux/sched.h> #include <linux/sched.h>
#define PRINT_PREF KERN_INFO "mtd_oobtest: "
static int dev = -EINVAL; static int dev = -EINVAL;
module_param(dev, int, S_IRUGO); module_param(dev, int, S_IRUGO);
MODULE_PARM_DESC(dev, "MTD device number to use"); MODULE_PARM_DESC(dev, "MTD device number to use");
...@@ -80,13 +80,12 @@ static int erase_eraseblock(int ebnum) ...@@ -80,13 +80,12 @@ static int erase_eraseblock(int ebnum)
err = mtd_erase(mtd, &ei); err = mtd_erase(mtd, &ei);
if (err) { if (err) {
printk(PRINT_PREF "error %d while erasing EB %d\n", err, ebnum); pr_err("error %d while erasing EB %d\n", err, ebnum);
return err; return err;
} }
if (ei.state == MTD_ERASE_FAILED) { if (ei.state == MTD_ERASE_FAILED) {
printk(PRINT_PREF "some erase error occurred at EB %d\n", pr_err("some erase error occurred at EB %d\n", ebnum);
ebnum);
return -EIO; return -EIO;
} }
...@@ -98,7 +97,7 @@ static int erase_whole_device(void) ...@@ -98,7 +97,7 @@ static int erase_whole_device(void)
int err; int err;
unsigned int i; unsigned int i;
printk(PRINT_PREF "erasing whole device\n"); pr_info("erasing whole device\n");
for (i = 0; i < ebcnt; ++i) { for (i = 0; i < ebcnt; ++i) {
if (bbt[i]) if (bbt[i])
continue; continue;
...@@ -107,7 +106,7 @@ static int erase_whole_device(void) ...@@ -107,7 +106,7 @@ static int erase_whole_device(void)
return err; return err;
cond_resched(); cond_resched();
} }
printk(PRINT_PREF "erased %u eraseblocks\n", i); pr_info("erased %u eraseblocks\n", i);
return 0; return 0;
} }
...@@ -141,9 +140,9 @@ static int write_eraseblock(int ebnum) ...@@ -141,9 +140,9 @@ static int write_eraseblock(int ebnum)
ops.oobbuf = writebuf; ops.oobbuf = writebuf;
err = mtd_write_oob(mtd, addr, &ops); err = mtd_write_oob(mtd, addr, &ops);
if (err || ops.oobretlen != use_len) { if (err || ops.oobretlen != use_len) {
printk(PRINT_PREF "error: writeoob failed at %#llx\n", pr_err("error: writeoob failed at %#llx\n",
(long long)addr); (long long)addr);
printk(PRINT_PREF "error: use_len %d, use_offset %d\n", pr_err("error: use_len %d, use_offset %d\n",
use_len, use_offset); use_len, use_offset);
errcnt += 1; errcnt += 1;
return err ? err : -1; return err ? err : -1;
...@@ -160,7 +159,7 @@ static int write_whole_device(void) ...@@ -160,7 +159,7 @@ static int write_whole_device(void)
int err; int err;
unsigned int i; unsigned int i;
printk(PRINT_PREF "writing OOBs of whole device\n"); pr_info("writing OOBs of whole device\n");
for (i = 0; i < ebcnt; ++i) { for (i = 0; i < ebcnt; ++i) {
if (bbt[i]) if (bbt[i])
continue; continue;
...@@ -168,10 +167,10 @@ static int write_whole_device(void) ...@@ -168,10 +167,10 @@ static int write_whole_device(void)
if (err) if (err)
return err; return err;
if (i % 256 == 0) if (i % 256 == 0)
printk(PRINT_PREF "written up to eraseblock %u\n", i); pr_info("written up to eraseblock %u\n", i);
cond_resched(); cond_resched();
} }
printk(PRINT_PREF "written %u eraseblocks\n", i); pr_info("written %u eraseblocks\n", i);
return 0; return 0;
} }
...@@ -194,17 +193,17 @@ static int verify_eraseblock(int ebnum) ...@@ -194,17 +193,17 @@ static int verify_eraseblock(int ebnum)
ops.oobbuf = readbuf; ops.oobbuf = readbuf;
err = mtd_read_oob(mtd, addr, &ops); err = mtd_read_oob(mtd, addr, &ops);
if (err || ops.oobretlen != use_len) { if (err || ops.oobretlen != use_len) {
printk(PRINT_PREF "error: readoob failed at %#llx\n", pr_err("error: readoob failed at %#llx\n",
(long long)addr); (long long)addr);
errcnt += 1; errcnt += 1;
return err ? err : -1; return err ? err : -1;
} }
if (memcmp(readbuf, writebuf, use_len)) { if (memcmp(readbuf, writebuf, use_len)) {
printk(PRINT_PREF "error: verify failed at %#llx\n", pr_err("error: verify failed at %#llx\n",
(long long)addr); (long long)addr);
errcnt += 1; errcnt += 1;
if (errcnt > 1000) { if (errcnt > 1000) {
printk(PRINT_PREF "error: too many errors\n"); pr_err("error: too many errors\n");
return -1; return -1;
} }
} }
...@@ -221,29 +220,28 @@ static int verify_eraseblock(int ebnum) ...@@ -221,29 +220,28 @@ static int verify_eraseblock(int ebnum)
ops.oobbuf = readbuf; ops.oobbuf = readbuf;
err = mtd_read_oob(mtd, addr, &ops); err = mtd_read_oob(mtd, addr, &ops);
if (err || ops.oobretlen != mtd->ecclayout->oobavail) { if (err || ops.oobretlen != mtd->ecclayout->oobavail) {
printk(PRINT_PREF "error: readoob failed at " pr_err("error: readoob failed at %#llx\n",
"%#llx\n", (long long)addr); (long long)addr);
errcnt += 1; errcnt += 1;
return err ? err : -1; return err ? err : -1;
} }
if (memcmp(readbuf + use_offset, writebuf, use_len)) { if (memcmp(readbuf + use_offset, writebuf, use_len)) {
printk(PRINT_PREF "error: verify failed at " pr_err("error: verify failed at %#llx\n",
"%#llx\n", (long long)addr); (long long)addr);
errcnt += 1; errcnt += 1;
if (errcnt > 1000) { if (errcnt > 1000) {
printk(PRINT_PREF "error: too many " pr_err("error: too many errors\n");
"errors\n");
return -1; return -1;
} }
} }
for (k = 0; k < use_offset; ++k) for (k = 0; k < use_offset; ++k)
if (readbuf[k] != 0xff) { if (readbuf[k] != 0xff) {
printk(PRINT_PREF "error: verify 0xff " pr_err("error: verify 0xff "
"failed at %#llx\n", "failed at %#llx\n",
(long long)addr); (long long)addr);
errcnt += 1; errcnt += 1;
if (errcnt > 1000) { if (errcnt > 1000) {
printk(PRINT_PREF "error: too " pr_err("error: too "
"many errors\n"); "many errors\n");
return -1; return -1;
} }
...@@ -251,12 +249,12 @@ static int verify_eraseblock(int ebnum) ...@@ -251,12 +249,12 @@ static int verify_eraseblock(int ebnum)
for (k = use_offset + use_len; for (k = use_offset + use_len;
k < mtd->ecclayout->oobavail; ++k) k < mtd->ecclayout->oobavail; ++k)
if (readbuf[k] != 0xff) { if (readbuf[k] != 0xff) {
printk(PRINT_PREF "error: verify 0xff " pr_err("error: verify 0xff "
"failed at %#llx\n", "failed at %#llx\n",
(long long)addr); (long long)addr);
errcnt += 1; errcnt += 1;
if (errcnt > 1000) { if (errcnt > 1000) {
printk(PRINT_PREF "error: too " pr_err("error: too "
"many errors\n"); "many errors\n");
return -1; return -1;
} }
...@@ -286,17 +284,17 @@ static int verify_eraseblock_in_one_go(int ebnum) ...@@ -286,17 +284,17 @@ static int verify_eraseblock_in_one_go(int ebnum)
ops.oobbuf = readbuf; ops.oobbuf = readbuf;
err = mtd_read_oob(mtd, addr, &ops); err = mtd_read_oob(mtd, addr, &ops);
if (err || ops.oobretlen != len) { if (err || ops.oobretlen != len) {
printk(PRINT_PREF "error: readoob failed at %#llx\n", pr_err("error: readoob failed at %#llx\n",
(long long)addr); (long long)addr);
errcnt += 1; errcnt += 1;
return err ? err : -1; return err ? err : -1;
} }
if (memcmp(readbuf, writebuf, len)) { if (memcmp(readbuf, writebuf, len)) {
printk(PRINT_PREF "error: verify failed at %#llx\n", pr_err("error: verify failed at %#llx\n",
(long long)addr); (long long)addr);
errcnt += 1; errcnt += 1;
if (errcnt > 1000) { if (errcnt > 1000) {
printk(PRINT_PREF "error: too many errors\n"); pr_err("error: too many errors\n");
return -1; return -1;
} }
} }
...@@ -309,7 +307,7 @@ static int verify_all_eraseblocks(void) ...@@ -309,7 +307,7 @@ static int verify_all_eraseblocks(void)
int err; int err;
unsigned int i; unsigned int i;
printk(PRINT_PREF "verifying all eraseblocks\n"); pr_info("verifying all eraseblocks\n");
for (i = 0; i < ebcnt; ++i) { for (i = 0; i < ebcnt; ++i) {
if (bbt[i]) if (bbt[i])
continue; continue;
...@@ -317,10 +315,10 @@ static int verify_all_eraseblocks(void) ...@@ -317,10 +315,10 @@ static int verify_all_eraseblocks(void)
if (err) if (err)
return err; return err;
if (i % 256 == 0) if (i % 256 == 0)
printk(PRINT_PREF "verified up to eraseblock %u\n", i); pr_info("verified up to eraseblock %u\n", i);
cond_resched(); cond_resched();
} }
printk(PRINT_PREF "verified %u eraseblocks\n", i); pr_info("verified %u eraseblocks\n", i);
return 0; return 0;
} }
...@@ -331,7 +329,7 @@ static int is_block_bad(int ebnum) ...@@ -331,7 +329,7 @@ static int is_block_bad(int ebnum)
ret = mtd_block_isbad(mtd, addr); ret = mtd_block_isbad(mtd, addr);
if (ret) if (ret)
printk(PRINT_PREF "block %d is bad\n", ebnum); pr_info("block %d is bad\n", ebnum);
return ret; return ret;
} }
...@@ -341,18 +339,18 @@ static int scan_for_bad_eraseblocks(void) ...@@ -341,18 +339,18 @@ static int scan_for_bad_eraseblocks(void)
bbt = kmalloc(ebcnt, GFP_KERNEL); bbt = kmalloc(ebcnt, GFP_KERNEL);
if (!bbt) { if (!bbt) {
printk(PRINT_PREF "error: cannot allocate memory\n"); pr_err("error: cannot allocate memory\n");
return -ENOMEM; return -ENOMEM;
} }
printk(PRINT_PREF "scanning for bad eraseblocks\n"); pr_info("scanning for bad eraseblocks\n");
for (i = 0; i < ebcnt; ++i) { for (i = 0; i < ebcnt; ++i) {
bbt[i] = is_block_bad(i) ? 1 : 0; bbt[i] = is_block_bad(i) ? 1 : 0;
if (bbt[i]) if (bbt[i])
bad += 1; bad += 1;
cond_resched(); cond_resched();
} }
printk(PRINT_PREF "scanned %d eraseblocks, %d are bad\n", i, bad); pr_info("scanned %d eraseblocks, %d are bad\n", i, bad);
return 0; return 0;
} }
...@@ -368,22 +366,22 @@ static int __init mtd_oobtest_init(void) ...@@ -368,22 +366,22 @@ static int __init mtd_oobtest_init(void)
printk(KERN_INFO "=================================================\n"); printk(KERN_INFO "=================================================\n");
if (dev < 0) { if (dev < 0) {
printk(PRINT_PREF "Please specify a valid mtd-device via module paramter\n"); pr_info("Please specify a valid mtd-device via module paramter\n");
printk(KERN_CRIT "CAREFUL: This test wipes all data on the specified MTD device!\n"); pr_crit(KERN_CRIT "CAREFUL: This test wipes all data on the specified MTD device!\n");
return -EINVAL; return -EINVAL;
} }
printk(PRINT_PREF "MTD device: %d\n", dev); pr_info("MTD device: %d\n", dev);
mtd = get_mtd_device(NULL, dev); mtd = get_mtd_device(NULL, dev);
if (IS_ERR(mtd)) { if (IS_ERR(mtd)) {
err = PTR_ERR(mtd); err = PTR_ERR(mtd);
printk(PRINT_PREF "error: cannot get MTD device\n"); pr_err("error: cannot get MTD device\n");
return err; return err;
} }
if (mtd->type != MTD_NANDFLASH) { if (mtd->type != MTD_NANDFLASH) {
printk(PRINT_PREF "this test requires NAND flash\n"); pr_info("this test requires NAND flash\n");
goto out; goto out;
} }
...@@ -392,7 +390,7 @@ static int __init mtd_oobtest_init(void) ...@@ -392,7 +390,7 @@ static int __init mtd_oobtest_init(void)
ebcnt = tmp; ebcnt = tmp;
pgcnt = mtd->erasesize / mtd->writesize; pgcnt = mtd->erasesize / mtd->writesize;
printk(PRINT_PREF "MTD device size %llu, eraseblock size %u, " pr_info("MTD device size %llu, eraseblock size %u, "
"page size %u, count of eraseblocks %u, pages per " "page size %u, count of eraseblocks %u, pages per "
"eraseblock %u, OOB size %u\n", "eraseblock %u, OOB size %u\n",
(unsigned long long)mtd->size, mtd->erasesize, (unsigned long long)mtd->size, mtd->erasesize,
...@@ -401,12 +399,12 @@ static int __init mtd_oobtest_init(void) ...@@ -401,12 +399,12 @@ static int __init mtd_oobtest_init(void)
err = -ENOMEM; err = -ENOMEM;
readbuf = kmalloc(mtd->erasesize, GFP_KERNEL); readbuf = kmalloc(mtd->erasesize, GFP_KERNEL);
if (!readbuf) { if (!readbuf) {
printk(PRINT_PREF "error: cannot allocate memory\n"); pr_err("error: cannot allocate memory\n");
goto out; goto out;
} }
writebuf = kmalloc(mtd->erasesize, GFP_KERNEL); writebuf = kmalloc(mtd->erasesize, GFP_KERNEL);
if (!writebuf) { if (!writebuf) {
printk(PRINT_PREF "error: cannot allocate memory\n"); pr_err("error: cannot allocate memory\n");
goto out; goto out;
} }
...@@ -420,7 +418,7 @@ static int __init mtd_oobtest_init(void) ...@@ -420,7 +418,7 @@ static int __init mtd_oobtest_init(void)
vary_offset = 0; vary_offset = 0;
/* First test: write all OOB, read it back and verify */ /* First test: write all OOB, read it back and verify */
printk(PRINT_PREF "test 1 of 5\n"); pr_info("test 1 of 5\n");
err = erase_whole_device(); err = erase_whole_device();
if (err) if (err)
...@@ -440,7 +438,7 @@ static int __init mtd_oobtest_init(void) ...@@ -440,7 +438,7 @@ static int __init mtd_oobtest_init(void)
* Second test: write all OOB, a block at a time, read it back and * Second test: write all OOB, a block at a time, read it back and
* verify. * verify.
*/ */
printk(PRINT_PREF "test 2 of 5\n"); pr_info("test 2 of 5\n");
err = erase_whole_device(); err = erase_whole_device();
if (err) if (err)
...@@ -453,7 +451,7 @@ static int __init mtd_oobtest_init(void) ...@@ -453,7 +451,7 @@ static int __init mtd_oobtest_init(void)
/* Check all eraseblocks */ /* Check all eraseblocks */
simple_srand(3); simple_srand(3);
printk(PRINT_PREF "verifying all eraseblocks\n"); pr_info("verifying all eraseblocks\n");
for (i = 0; i < ebcnt; ++i) { for (i = 0; i < ebcnt; ++i) {
if (bbt[i]) if (bbt[i])
continue; continue;
...@@ -461,16 +459,16 @@ static int __init mtd_oobtest_init(void) ...@@ -461,16 +459,16 @@ static int __init mtd_oobtest_init(void)
if (err) if (err)
goto out; goto out;
if (i % 256 == 0) if (i % 256 == 0)
printk(PRINT_PREF "verified up to eraseblock %u\n", i); pr_info("verified up to eraseblock %u\n", i);
cond_resched(); cond_resched();
} }
printk(PRINT_PREF "verified %u eraseblocks\n", i); pr_info("verified %u eraseblocks\n", i);
/* /*
* Third test: write OOB at varying offsets and lengths, read it back * Third test: write OOB at varying offsets and lengths, read it back
* and verify. * and verify.
*/ */
printk(PRINT_PREF "test 3 of 5\n"); pr_info("test 3 of 5\n");
err = erase_whole_device(); err = erase_whole_device();
if (err) if (err)
...@@ -503,7 +501,7 @@ static int __init mtd_oobtest_init(void) ...@@ -503,7 +501,7 @@ static int __init mtd_oobtest_init(void)
vary_offset = 0; vary_offset = 0;
/* Fourth test: try to write off end of device */ /* Fourth test: try to write off end of device */
printk(PRINT_PREF "test 4 of 5\n"); pr_info("test 4 of 5\n");
err = erase_whole_device(); err = erase_whole_device();
if (err) if (err)
...@@ -522,14 +520,14 @@ static int __init mtd_oobtest_init(void) ...@@ -522,14 +520,14 @@ static int __init mtd_oobtest_init(void)
ops.ooboffs = mtd->ecclayout->oobavail; ops.ooboffs = mtd->ecclayout->oobavail;
ops.datbuf = NULL; ops.datbuf = NULL;
ops.oobbuf = writebuf; ops.oobbuf = writebuf;
printk(PRINT_PREF "attempting to start write past end of OOB\n"); pr_info("attempting to start write past end of OOB\n");
printk(PRINT_PREF "an error is expected...\n"); pr_info("an error is expected...\n");
err = mtd_write_oob(mtd, addr0, &ops); err = mtd_write_oob(mtd, addr0, &ops);
if (err) { if (err) {
printk(PRINT_PREF "error occurred as expected\n"); pr_info("error occurred as expected\n");
err = 0; err = 0;
} else { } else {
printk(PRINT_PREF "error: can write past end of OOB\n"); pr_err("error: can write past end of OOB\n");
errcnt += 1; errcnt += 1;
} }
...@@ -542,19 +540,19 @@ static int __init mtd_oobtest_init(void) ...@@ -542,19 +540,19 @@ static int __init mtd_oobtest_init(void)
ops.ooboffs = mtd->ecclayout->oobavail; ops.ooboffs = mtd->ecclayout->oobavail;
ops.datbuf = NULL; ops.datbuf = NULL;
ops.oobbuf = readbuf; ops.oobbuf = readbuf;
printk(PRINT_PREF "attempting to start read past end of OOB\n"); pr_info("attempting to start read past end of OOB\n");
printk(PRINT_PREF "an error is expected...\n"); pr_info("an error is expected...\n");
err = mtd_read_oob(mtd, addr0, &ops); err = mtd_read_oob(mtd, addr0, &ops);
if (err) { if (err) {
printk(PRINT_PREF "error occurred as expected\n"); pr_info("error occurred as expected\n");
err = 0; err = 0;
} else { } else {
printk(PRINT_PREF "error: can read past end of OOB\n"); pr_err("error: can read past end of OOB\n");
errcnt += 1; errcnt += 1;
} }
if (bbt[ebcnt - 1]) if (bbt[ebcnt - 1])
printk(PRINT_PREF "skipping end of device tests because last " pr_info("skipping end of device tests because last "
"block is bad\n"); "block is bad\n");
else { else {
/* Attempt to write off end of device */ /* Attempt to write off end of device */
...@@ -566,14 +564,14 @@ static int __init mtd_oobtest_init(void) ...@@ -566,14 +564,14 @@ static int __init mtd_oobtest_init(void)
ops.ooboffs = 0; ops.ooboffs = 0;
ops.datbuf = NULL; ops.datbuf = NULL;
ops.oobbuf = writebuf; ops.oobbuf = writebuf;
printk(PRINT_PREF "attempting to write past end of device\n"); pr_info("attempting to write past end of device\n");
printk(PRINT_PREF "an error is expected...\n"); pr_info("an error is expected...\n");
err = mtd_write_oob(mtd, mtd->size - mtd->writesize, &ops); err = mtd_write_oob(mtd, mtd->size - mtd->writesize, &ops);
if (err) { if (err) {
printk(PRINT_PREF "error occurred as expected\n"); pr_info("error occurred as expected\n");
err = 0; err = 0;
} else { } else {
printk(PRINT_PREF "error: wrote past end of device\n"); pr_err("error: wrote past end of device\n");
errcnt += 1; errcnt += 1;
} }
...@@ -586,14 +584,14 @@ static int __init mtd_oobtest_init(void) ...@@ -586,14 +584,14 @@ static int __init mtd_oobtest_init(void)
ops.ooboffs = 0; ops.ooboffs = 0;
ops.datbuf = NULL; ops.datbuf = NULL;
ops.oobbuf = readbuf; ops.oobbuf = readbuf;
printk(PRINT_PREF "attempting to read past end of device\n"); pr_info("attempting to read past end of device\n");
printk(PRINT_PREF "an error is expected...\n"); pr_info("an error is expected...\n");
err = mtd_read_oob(mtd, mtd->size - mtd->writesize, &ops); err = mtd_read_oob(mtd, mtd->size - mtd->writesize, &ops);
if (err) { if (err) {
printk(PRINT_PREF "error occurred as expected\n"); pr_info("error occurred as expected\n");
err = 0; err = 0;
} else { } else {
printk(PRINT_PREF "error: read past end of device\n"); pr_err("error: read past end of device\n");
errcnt += 1; errcnt += 1;
} }
...@@ -610,14 +608,14 @@ static int __init mtd_oobtest_init(void) ...@@ -610,14 +608,14 @@ static int __init mtd_oobtest_init(void)
ops.ooboffs = 1; ops.ooboffs = 1;
ops.datbuf = NULL; ops.datbuf = NULL;
ops.oobbuf = writebuf; ops.oobbuf = writebuf;
printk(PRINT_PREF "attempting to write past end of device\n"); pr_info("attempting to write past end of device\n");
printk(PRINT_PREF "an error is expected...\n"); pr_info("an error is expected...\n");
err = mtd_write_oob(mtd, mtd->size - mtd->writesize, &ops); err = mtd_write_oob(mtd, mtd->size - mtd->writesize, &ops);
if (err) { if (err) {
printk(PRINT_PREF "error occurred as expected\n"); pr_info("error occurred as expected\n");
err = 0; err = 0;
} else { } else {
printk(PRINT_PREF "error: wrote past end of device\n"); pr_err("error: wrote past end of device\n");
errcnt += 1; errcnt += 1;
} }
...@@ -630,20 +628,20 @@ static int __init mtd_oobtest_init(void) ...@@ -630,20 +628,20 @@ static int __init mtd_oobtest_init(void)
ops.ooboffs = 1; ops.ooboffs = 1;
ops.datbuf = NULL; ops.datbuf = NULL;
ops.oobbuf = readbuf; ops.oobbuf = readbuf;
printk(PRINT_PREF "attempting to read past end of device\n"); pr_info("attempting to read past end of device\n");
printk(PRINT_PREF "an error is expected...\n"); pr_info("an error is expected...\n");
err = mtd_read_oob(mtd, mtd->size - mtd->writesize, &ops); err = mtd_read_oob(mtd, mtd->size - mtd->writesize, &ops);
if (err) { if (err) {
printk(PRINT_PREF "error occurred as expected\n"); pr_info("error occurred as expected\n");
err = 0; err = 0;
} else { } else {
printk(PRINT_PREF "error: read past end of device\n"); pr_err("error: read past end of device\n");
errcnt += 1; errcnt += 1;
} }
} }
/* Fifth test: write / read across block boundaries */ /* Fifth test: write / read across block boundaries */
printk(PRINT_PREF "test 5 of 5\n"); pr_info("test 5 of 5\n");
/* Erase all eraseblocks */ /* Erase all eraseblocks */
err = erase_whole_device(); err = erase_whole_device();
...@@ -652,7 +650,7 @@ static int __init mtd_oobtest_init(void) ...@@ -652,7 +650,7 @@ static int __init mtd_oobtest_init(void)
/* Write all eraseblocks */ /* Write all eraseblocks */
simple_srand(11); simple_srand(11);
printk(PRINT_PREF "writing OOBs of whole device\n"); pr_info("writing OOBs of whole device\n");
for (i = 0; i < ebcnt - 1; ++i) { for (i = 0; i < ebcnt - 1; ++i) {
int cnt = 2; int cnt = 2;
int pg; int pg;
...@@ -674,17 +672,16 @@ static int __init mtd_oobtest_init(void) ...@@ -674,17 +672,16 @@ static int __init mtd_oobtest_init(void)
if (err) if (err)
goto out; goto out;
if (i % 256 == 0) if (i % 256 == 0)
printk(PRINT_PREF "written up to eraseblock " pr_info("written up to eraseblock %u\n", i);
"%u\n", i);
cond_resched(); cond_resched();
addr += mtd->writesize; addr += mtd->writesize;
} }
} }
printk(PRINT_PREF "written %u eraseblocks\n", i); pr_info("written %u eraseblocks\n", i);
/* Check all eraseblocks */ /* Check all eraseblocks */
simple_srand(11); simple_srand(11);
printk(PRINT_PREF "verifying all eraseblocks\n"); pr_info("verifying all eraseblocks\n");
for (i = 0; i < ebcnt - 1; ++i) { for (i = 0; i < ebcnt - 1; ++i) {
if (bbt[i] || bbt[i + 1]) if (bbt[i] || bbt[i + 1])
continue; continue;
...@@ -702,28 +699,28 @@ static int __init mtd_oobtest_init(void) ...@@ -702,28 +699,28 @@ static int __init mtd_oobtest_init(void)
if (err) if (err)
goto out; goto out;
if (memcmp(readbuf, writebuf, mtd->ecclayout->oobavail * 2)) { if (memcmp(readbuf, writebuf, mtd->ecclayout->oobavail * 2)) {
printk(PRINT_PREF "error: verify failed at %#llx\n", pr_err("error: verify failed at %#llx\n",
(long long)addr); (long long)addr);
errcnt += 1; errcnt += 1;
if (errcnt > 1000) { if (errcnt > 1000) {
printk(PRINT_PREF "error: too many errors\n"); pr_err("error: too many errors\n");
goto out; goto out;
} }
} }
if (i % 256 == 0) if (i % 256 == 0)
printk(PRINT_PREF "verified up to eraseblock %u\n", i); pr_info("verified up to eraseblock %u\n", i);
cond_resched(); cond_resched();
} }
printk(PRINT_PREF "verified %u eraseblocks\n", i); pr_info("verified %u eraseblocks\n", i);
printk(PRINT_PREF "finished with %d errors\n", errcnt); pr_info("finished with %d errors\n", errcnt);
out: out:
kfree(bbt); kfree(bbt);
kfree(writebuf); kfree(writebuf);
kfree(readbuf); kfree(readbuf);
put_mtd_device(mtd); put_mtd_device(mtd);
if (err) if (err)
printk(PRINT_PREF "error %d occurred\n", err); pr_info("error %d occurred\n", err);
printk(KERN_INFO "=================================================\n"); printk(KERN_INFO "=================================================\n");
return err; return err;
} }
......
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