garbage collect
David Woodhouse
dwmw2 at infradead.org
Mon Jul 3 12:09:38 EDT 2000
alan at lxorguk.ukuu.org.uk said:
> The interesting question is should they.
I don't (currently) think so. It's fairly difficult to fit flash into the
block device model.
JFFS is the primary user of MTD devices now - everything else (i.e. FTL,
NFTL) is a second class citizen. JFFS writes variable-size nodes, and doing
that on a block device would mean wasting RAM on grouping writes into
blocksized chunks.
And what do you set your blocksize to? On most NOR flash devices, it's
something like 128Kb. We need to support sub-blocksize writes, and we need
that to be explicitly controlled by the user, so it can optimally balance the
journalling requirements with the desire to have as few write cycles as
possible.
> Withouth them going via the block layer you wont be able to mirror
> them
Mirrored flash? That's just sick. And anyway, it needs to be done at a
higher level than the individual flash chips - on which you may have bad
blocks in different places, which need to be mapped round differently on
each chip.
Currently, if you want mirrored flash, you have to use {N,}FTL to provide
emulated block devices on top of which you stick your RAID array.
It's feasible to add direct mirroring support to JFFS, though, if it's
really a necessary feature.
> or potentially run a loopback fs over them soon
That's even sicker, and should arguably be done in userspace with nbd.
--
dwmw2
To unsubscribe, send "unsubscribe mtd" to majordomo at infradead.org
More information about the linux-mtd
mailing list