[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: Killing JFFS under 2.2
> 1. scan_flash should never fail, no matter how many bugs there are in
> the writing algorithm. it is ok to skip corrupt nodes of course but it
> should _always_ catch on to correct nodes aligned correctly.
The problem here was not that it was failing, but that the 'head' node was
not erase-block-aligned, and hence garbage collection would always fail
because it calls jffs_flash_erasable_size() with fmc->head->offset as the
first location to erase. jffs_flash_erasable_size() was always failing,
The image, along with the output of the kernel just before it was powered
down, and the output of the kernel when it was later remounted, are all
available for FTP if you want a closer look.
> 2. where is the schedule point between entering JFFS and physically
> writing anything to disk ? where can interleaving of tasks matter ?
Erase operations on this chip take about a second, so I schedule() in the
low-level MTD driver while waiting for erases.