linux-stable/drivers/mtd
Daniel Rosenthal 63fd7f30f3 [MTD] [INFTL] Fix infinite loop in INFTL_foldchain
When iterating over a chain in reverse (oldest block first), this
patch correctly marks the PUtable[] entry of the second to last erase
block of a chain as BLOCK_NIL, regardless of whether or not it can
format the last block successfully. Before, the second to last block
was only marked as pointing to BLOCK_NIL if INFTL_formatblock()
succeeded on the last block of the chain, which could potentially
result in an infinite loop if the block was worn out and refused to
format.

Signed-off-by: Daniel Rosenthal <danielrosenthal@acm.org>
Acked-by: Greg Ungerer <gerg@snapgear.com>
Signed-off-by: David Woodhouse <David.Woodhouse@intel.com>
2008-10-08 11:26:38 +01:00
..
chips [MTD] [NOR] fix cfi_cmdset_0001 FL_SYNCING race (take 2) 2008-09-26 18:56:18 -06:00
devices [MTD] m25p80.c extended jedec support 2008-08-11 17:33:08 +01:00
maps [MTD] [MAPS] Maps: make uclinux mapping driver depend on MTD_RAM 2008-09-26 19:05:34 -06:00
nand [MTD] [NAND] nand_base.c: reset chip first 2008-09-16 08:18:12 -07:00
onenand [MTD] [NAND] OMAP2: add retry after read timeout 2008-09-16 00:39:01 -07:00
ubi UBI: always start the background thread 2008-07-25 11:35:15 +03:00
afs.c MTD/JFFS2: remove CVS keywords 2008-06-04 17:50:17 +01:00
ar7part.c [MTD] Clean up AR7 partition map support 2008-04-23 09:39:49 +01:00
cmdlinepart.c [MTD] Fix const assignment in the MTD command line partitioning driver 2008-07-11 18:24:38 +01:00
ftl.c Merge branch 'linux-next' of git://git.infradead.org/~dedekind/ubi-2.6 2008-07-25 10:40:14 -04:00
inftlcore.c [MTD] [INFTL] Fix infinite loop in INFTL_foldchain 2008-10-08 11:26:38 +01:00
inftlmount.c MTD/JFFS2: remove CVS keywords 2008-06-04 17:50:17 +01:00
Kconfig [MTD] dataflash OTP support 2008-08-01 21:47:47 +01:00
Makefile [MTD] AR7 mtd partition map 2008-04-22 20:48:12 +01:00
mtd_blkdevs.c [MTD] Use list_for_each_entry[_safe] where appropriate. 2008-06-04 17:53:31 +01:00
mtdblock.c MTD/JFFS2: remove CVS keywords 2008-06-04 17:50:17 +01:00
mtdblock_ro.c MTD/JFFS2: remove CVS keywords 2008-06-04 17:50:17 +01:00
mtdchar.c [MTD] dataflash OTP support 2008-08-01 21:47:47 +01:00
mtdconcat.c [MTD] Define and use MTD_FAIL_ADDR_UNKNOWN instead of 0xffffffff 2008-08-12 11:02:15 +01:00
mtdcore.c [MTD] Use list_for_each_entry[_safe] where appropriate. 2008-06-04 17:53:31 +01:00
mtdcore.h [MTD] mtdcore.c: share syms with mtd_blkdev.c 2007-06-28 20:24:50 +01:00
mtdoops.c [MTD] mtdoops.c: make struct oops_cxt static again 2008-04-22 12:35:34 +01:00
mtdpart.c [MTD] Define and use MTD_FAIL_ADDR_UNKNOWN instead of 0xffffffff 2008-08-12 11:02:15 +01:00
mtdsuper.c [MTD] Fix !CONFIG_BLOCK compile for mtdsuper.c 2008-08-02 07:52:39 +01:00
nftlcore.c MTD/JFFS2: remove CVS keywords 2008-06-04 17:50:17 +01:00
nftlmount.c MTD/JFFS2: remove CVS keywords 2008-06-04 17:50:17 +01:00
ofpart.c [MTD] mtd/ofpart.c: add MODULE_LICENSE 2008-04-22 15:53:52 +01:00
redboot.c Merge branch 'master' of git://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux-2.6 2008-07-11 14:36:25 +01:00
rfd_ftl.c MTD/JFFS2: remove CVS keywords 2008-06-04 17:50:17 +01:00
ssfdc.c [MTD] Use DIV_ROUND_UP 2008-08-02 18:45:18 +01:00