Linux kernel mirror (for testing) git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git
kernel os linux

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>

authored by

Felix Radensky and committed by
David Woodhouse
431e1eca a80f1c1f

+2 -2
+2 -2
drivers/mtd/mtdconcat.c
··· 319 319 if (!(mtd->flags & MTD_WRITEABLE)) 320 320 return -EROFS; 321 321 322 - ops->retlen = 0; 322 + ops->retlen = ops->oobretlen = 0; 323 323 324 324 for (i = 0; i < concat->num_subdev; i++) { 325 325 struct mtd_info *subdev = concat->subdev[i]; ··· 334 334 devops.len = subdev->size - to; 335 335 336 336 err = subdev->write_oob(subdev, to, &devops); 337 - ops->retlen += devops.retlen; 337 + ops->retlen += devops.oobretlen; 338 338 if (err) 339 339 return err; 340 340