Messages in this thread | | | Date | Wed, 8 Jan 2003 14:55:03 +0100 | From | Rogier Wolff <> | Subject | Re: Fwd: File system corruption |
| |
On Wed, Jan 08, 2003 at 02:15:06PM +0000, Alan Cox wrote: > On Wed, 2003-01-08 at 11:35, Paul wrote: > > What I have found is that just after the start of a sector, usually 43 to 45 > > bytes, 6 bytes are skipped and the sequence starts again. This continues > > until the next sector starts, where the sequence corrects. This appears to > > happen every 65536 bytes or some multiple of 65536. It may skip three blocks > > of 65536 and then corrupt on the next block of 65536 bytes. > > Ok that I'm afraid bears no resemblance to anything the software side > does (we write in chunks but we do single PIO block transfers of each > sector).
After examining the resulting image, Paul has a "clock" line to his flash device that is a bit noisy. This occasionally causes one 16-bit entity to be clocked into the device twice.
To detect this going wrong, we could (but only as a configurable option), write 255 16-bit words to the device (remember this is PIO!), check that DRQ is still active and only then write the last word. (at which point DRQ should go inactive).
Roger.
-- ** R.E.Wolff@BitWizard.nl ** http://www.BitWizard.nl/ ** +31-15-2600998 ** *-- BitWizard writes Linux device drivers for any device you may have! --* * The Worlds Ecosystem is a stable system. Stable systems may experience * * excursions from the stable situation. We are currently in such an * * excursion: The stable situation does not include humans. *************** - To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to majordomo@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/
| |