[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: jffs2 file write problem




vmalik@xxxxxxx.com said:
> Waiting for chip to read, status = 4 Erase at 0x006c0000 finished, but
> state != MTD_ERASE_DONE. State is 0x0

Flash driver bug. It doesn't seem to be correctly setting the status field 
in the erase request before calling the callback.

So JFFS2 thinks the erase failed, files the offending block on the bad 
list, and quite naturally runs out of space fairly quickly :)

If you're using AMD CFI-compatible flash with a uniform erase size, it's 
missing the fix I committed to cfi_amdstd_erase_varsize last Monday. I'd 
commit it if my route to my machine wasn't currently flapping.

--- cfi_cmdset_0002.c whenever
+++ cfi_cmdset_0002.c whenever
@@ -733,4 +733,5 @@
	}
		
+	instr->state = MTD_ERASE_DONE;
	if (instr->callback)
		instr->callback(instr);
	
--
dwmw2



To unsubscribe from this list: send the line "unsubscribe jffs-dev" in
the body of a message to majordomo@xxxxxxx.com