Low write throughput with arm/jffs2/nand

Sergei Sharonov Sergei.Sharonov at Halliburton.com
Mon Feb 7 09:47:24 EST 2005


Hi,

Around Jan 18 nand_wait() function in nand_base.c was changed to 
use msleep(1) instead of yield(). While it is sort of OK on x86
with its default HZ=1000 (linux 2.6) it slows down the throughput
on arm where the default is HZ=100. What I believe is happening:
- on the first pass flash is not ready
- msleep(1) is invoked, but it actually sleeps 10 or 20 ms

What will be the right way of fixing that? Replacing msleep(1) with
yield() does it but philosophically is probably not the right thing 
to do, changing HZ is much worse..

Sergei

P.S. What is the best read/write speed you people are getting with 
jffs2/nand?




More information about the linux-mtd mailing list