Skip site navigation (1)Skip section navigation (2)
Date:      Mon, 17 Dec 2007 17:09:31 +0100
From:      =?utf-8?Q?Dag-Erling_Sm=C3=B8rgrav?= <des@des.no>
To:        Bruce M Simpson <bms@incunabulum.net>
Cc:        cvs-src@FreeBSD.org, Poul-Henning Kamp <phk@phk.freebsd.dk>, src-committers@FreeBSD.org, "Bruce M. Simpson" <bms@FreeBSD.org>, cvs-all@FreeBSD.org
Subject:   Re: cvs commit: src/sbin/atacontrol atacontrol.c
Message-ID:  <86hcihi9qc.fsf@ds4.des.no>
In-Reply-To: <4766951B.8090504@incunabulum.net> (Bruce M. Simpson's message of "Mon\, 17 Dec 2007 15\:26\:19 %2B0000")
References:  <11419.1197903331@critter.freebsd.dk> <4766951B.8090504@incunabulum.net>

next in thread | previous in thread | raw e-mail | index | archive | help
Bruce M Simpson <bms@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
--=20
Dag-Erling Sm=C3=B8rgrav - des@des.no



Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?86hcihi9qc.fsf>