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

Re: impacts during GC



On Mon, 4 Dec 2000 afelson@xxxxxxx.com wrote:
> When garbage collection is in progress, what are the impacts to processes
> using the JFFS?
> 
> I have a process that has to do readonly lookups to a large database that
> is too large to be buffered into RAM.
> Will it be able to do lookups while GC is in progress?
> 
> Another task has to write to a log.  I'm assuming that i'll have to buffer
> the write requests in case JFFS doesn't
> respond immediately during GC.

The GC is incremental, so the only time it should block things from
reading or writing is during an actual move of a node (or similar
operation). It won't block everything during the entire run, IIRC. However
I don't know how the 2.2/2.4 ports implement the GC thread. But
theoretically, it does not need to block at least :) 

You need to be prepared to take potentially large latencies during a GC
run though, for example during erase of a sector. Depending on the flash
type it can take up to 2 seconds I think. During that time you can neither
read nor write. Some more modern flashes can do that but I don't know if
the MTD layer knows about it, or if the GC thread in JFFS does.. 

-BW


To unsubscribe from this list: send the line "unsubscribe jffs-dev" in
the body of a message to majordomo@xxxxxxx.com