cvs commit: src/sbin/atacontrol atacontrol.c
Dag-Erling Smørgrav
des at des.no
Mon Dec 17 08:09:40 PST 2007
Bruce M Simpson <bms at incunabulum.net> writes:
> The feedback I've seen in FreeBSD forums regarding ATA write caching
> tends to back up your original assertion.
It wouldn't be the first case of uninformed people reinforcing
eachother's belief in incorrect information.
> I wonder if vendor neutral, reproducible, scientific research has been
> conducted into this issue.
Scientific research? Since when does reverse engineering qualify as
scientific research?
> * NAND Flash embedded ATA controllers should not erase sectors
> containing data unless absolutely necessary, to implement wear
> levelling.
No. Blocks which go from used to unused should be immediately erased.
Otherwise, the device fills up with unused, unerased blocks and you end
up having to erase a block every time you write to the device.
Remember that cells in NAND flash can only be changed in one direction
(one to zero for single-level flash) without being erased. As a result,
there are very few cases (allocation bitmaps being one of them) where
you can write to the same block of NAND flash multiple times without
erasing it in between.
> [I came across an alternative to JFFS2 awhile back whose name escapes
> me, which might work for the SDIO arm stuff imp was playing with.]
Specialized file systems such as JFFS and YAFFS are not very useful for
flash media with built-in wear levelling, such as USB sticks or CF / SD
cards. They are mostly useful for embedded devices with on-board NAND
flash.
DES
--
Dag-Erling Smørgrav - des at des.no
More information about the cvs-src
mailing list