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

Re: Killing JFFS under 2.2

bjornw@xxxxxxx.com said:
> 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.

bjornw@xxxxxxx.com said:
>  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.