[PATCH]Add JFFS2 eraseblock header support

zhao forrest zhao_fusheng at hotmail.com
Tue Sep 20 22:57:40 EDT 2005


> > On Tue, 2005-09-20 at 12:24 +0200, Jörn Engel wrote:
> > > > 4 old JFFS2 binaries reject mounting new JFFS2 images
> > >
> > > Why this?
> >
> > Because he changed cleanmarker to the EB header (eraseblock header). 
Old
> > binaries got confused by this since there are working no compatibility
> > flags in cleanmarkers.
>
>WTF?  Old code can simply delete the EB.  You lost all the goodies
>from EB, sure, but they are only optimization.  So who cares?
>
> > Moreover, we are going to implement the 1:1 mapping at the same time.
> >
> > If old binary mounts new image, it starts writing its cleanmarkers, use
> > 1:N mapping etc. A "mixed" image appears. Afterwords, if this mixed
> > image is being mounted on new JFFS2 binary, what poor Zhao is supposed
> > to do? There will be too much ugliness in the code to handle that.
>
>Please don't mix those two problems.  1:1 mapping has been dealt with.
>If you don't like how it has been dealt with, complain in the context
>of 1:1 mapping.
>

Let me give some my thoughts about the above two problems.
It's ture that 1:1 mapping was dealt with a few days ago. But we can't
assume 1:1 mapping when writing EBH patch. Because there still exist the
old JFFS2 code(the code without the recent 1:1 mapping patch) that use 1:N
mapping.So I can't set the comp_flag of eraseblock_header to JFFS2_FEATURE_
RWCOMPAT_DELETE. Otherwise the "mixed" image will appear for old JFFS2 code
(the code without the recent 1:1 mapping patch) as explained by Artem.

Joern,
I can understand your opinion. Your idea is that, since 1:1 mapping was 
handled recently, the comp_flag of eraseblock_header can be set to 
RWCOMPAT_
DELETE for the JFFS2 code with 1:1 mapping. But for the older JFFS2 code 
with
1:N mapping, the comp_flag of eraseblock_header have to be set to INCOMPAT.
IMHO I think 1:1 mapping and eraseblock_header should be added to JFFS2 at 
the same time. But the current situation is that 1:1 mapping patch was 
checked into CVS earlier than eraseblock_header. 
So I still agree that "old JFFS2 binaries reject mounting new JFFS2 
images".

Thanks,
Forrest






More information about the linux-mtd mailing list