NAND pages cache?

Artem Bityuckiy dedekind at oktetlabs.ru
Mon Nov 15 03:49:13 EST 2004


Hello,

It is known that MTD always reads/writes in fractions of the whole NAND 
pages. An this is right I believe.

But while working with JFFS2, I have mentioned that very often it reads 
the same page several times consequently. This happens for example, when 
JFFS2 performs Garbage Collection, and there are several small nodes in 
the NAND page. Thus, when JFFS2 reads these nodes, it re-reads the same 
NAND page several times. This is bad.

So, the obvious idea how to avoid this is to introduce something like 
NAND pages cache. The cache will keep several NAND pages which were last 
accessed.

Obviously, this will require at least one more page buffer copy 
operation and, for example, will only decrease the sequential read speed.

So, It is possible to introduce calls like:

nand_read_buffered
nand_read_unbuffered

I don not know is it good to do this only in JFFS2 or on the MTD NAND layer?

Comments?

Thanks.

-- 
Best regards, Artem B. Bityuckiy
Oktet Labs (St. Petersburg), Software Engineer.
+78124286709 (office) +79112449030 (mobile)
E-mail: dedekind at oktetlabs.ru, web: http://www.oktetlabs.ru




More information about the linux-mtd mailing list