aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorFelix Radensky <felix@embedded-sol.com>2011-04-25 01:57:12 +0300
committerDavid Woodhouse <David.Woodhouse@intel.com>2011-05-25 01:54:50 +0100
commit431e1ecabddcd7cbba237182ddf431771f98bb4c (patch)
tree63307f7daa9e9601bc36384bf5c8b888f9e725e5
parenta80f1c1f6a15e4eeba5c146ec9c5c0e12458abc5 (diff)
downloadkernel_samsung_smdk4412-431e1ecabddcd7cbba237182ddf431771f98bb4c.zip
kernel_samsung_smdk4412-431e1ecabddcd7cbba237182ddf431771f98bb4c.tar.gz
kernel_samsung_smdk4412-431e1ecabddcd7cbba237182ddf431771f98bb4c.tar.bz2
mtd: mtdconcat: fix NAND OOB write
Currently mtdconcat is broken for NAND. An attemtpt to create JFFS2 filesystem on concatenation of several NAND devices fails with OOB write errors. This patch fixes that problem. Signed-off-by: Felix Radensky <felix@embedded-sol.com> Signed-off-by: Artem Bityutskiy <Artem.Bityutskiy@nokia.com> Cc: stable@kernel.org Signed-off-by: David Woodhouse <David.Woodhouse@intel.com>
-rw-r--r--drivers/mtd/mtdconcat.c4
1 files changed, 2 insertions, 2 deletions
diff --git a/drivers/mtd/mtdconcat.c b/drivers/mtd/mtdconcat.c
index 5060e60..e601672 100644
--- a/drivers/mtd/mtdconcat.c
+++ b/drivers/mtd/mtdconcat.c
@@ -319,7 +319,7 @@ concat_write_oob(struct mtd_info *mtd, loff_t to, struct mtd_oob_ops *ops)
if (!(mtd->flags & MTD_WRITEABLE))
return -EROFS;
- ops->retlen = 0;
+ ops->retlen = ops->oobretlen = 0;
for (i = 0; i < concat->num_subdev; i++) {
struct mtd_info *subdev = concat->subdev[i];
@@ -334,7 +334,7 @@ concat_write_oob(struct mtd_info *mtd, loff_t to, struct mtd_oob_ops *ops)
devops.len = subdev->size - to;
err = subdev->write_oob(subdev, to, &devops);
- ops->retlen += devops.retlen;
+ ops->retlen += devops.oobretlen;
if (err)
return err;