[Patch 1/1] don't suspend erase for erase in cfi_cmdset_0002
Peter Wippich
pewi at gw-instruments.de
Mon Aug 3 06:50:44 EDT 2009
Hi,
came around this problem while stress testing jffs2. From time to time the
block erase failed and the file system overflows. I don't know if there
are any Nor chips out there which allow a new erase to start when in erase
suspend. However, the chips on my board dont't. And even when it doesn't
make much sense to suspend an erase operation for another erase.
Patch below fixes the problem for me.
Have fun and take care,
Peter
Signed-off-by: Peter Wippich <pewi at gw-instruments.de>
---
diff -Naur a/drivers/mtd/chips/cfi_cmdset_0002.c
b/drivers/mtd/chips/cfi_cmdset_0002.c
--- a/drivers/mtd/chips/cfi_cmdset_0002.c 2007-07-10 20:56:30.000000000 +0200
+++ b/drivers/mtd/chips/cfi_cmdset_0002.c 2009-08-02 19:55:34.000000000 +0200
@@ -521,6 +521,10 @@
case FL_ERASING:
if (mode == FL_WRITING) /* FIXME: Erase-suspend-program appears broken. */
goto sleep;
+ if (mode == FL_ERASING) {
+ printk(KERN_INFO "attempt erase suspend with mode FL_ERASING\n") ;
+ goto sleep;
+ }
if (!( mode == FL_READY
|| mode == FL_POINT
More information about the linux-mtd
mailing list