[PATCH] scan.c

David Woodhouse dwmw2 at infradead.org
Mon Jun 17 06:15:36 EDT 2002


Joakim.Tjernlund at lumentis.se said:
> I was sure that I sent this one long time ago, but my mind must play
> tricks on me.

> Do not scan blocks which just contain a CLEANMARKER, it's a waste of
> CPU cycles.

I'd rather we still scanned them, but deferred it till later -- as long as
it gets done before we actually try to write to them, that's fine.

We can go one better than that -- we can avoid doing the crc32 check on 
data nodes during mount. As as we do it in read_inode(), and we do _all_ 
inodes before actually starting to garbage-collect, we don't have to make 
the user wait for it during mount.

I tried both of these last week (well, actually I just disabled the crc32 
without doing it later), and the latter gave more of an improvement. If we 
skip the building up of fragment lists during mount too, it'll probably get 
even faster.

Of course, the two things that gave me the best improvement in mount time 
were fixing the inocache_last optimisation, and then just increasing 
INOCACHE_HASHSIZE to 128. The latter rendered the whole inocache_last 
optimisation pointless, btw.

--
dwmw2






More information about the linux-mtd mailing list