You replied only to me but I'm replying to you and the beagle list.
>
>> > Most of the cheap cards have poor, if any, wear leveling
>> > routines.
>>
>> I'm wrestling probably the same issues. 2/3 of my uSD cards now
>> cannot be backed up or restored (usind dd if=/dev/mmcblk0 etc.),
>> one doesn't seem to boot the other hangs the command line on bone
>> for long periods. My application writes small files pretty often.
>
> What cards are you using?
Kingston 4 GB Class 4 Can't dd onto or off of card
PNY 4GB Class 4 Can't dd onto or off of card
kngston 4 GB Class 4 works but hasn't seen nearly as many writes
Those are cheap cards. I wouldn't use them.
My rule of thumb is to use SD cards from companies who also own a
semiconductor fab. Usually you'll get decent quality stuff following
that rule. To get good stuff, buy as many cards as you can and test
them to find out what they really do.
None of these cards has seen anywhere near enough writing to get close
to the normal limits of flash memory assuming even slightly sane wear
leveling. Unless Angstrom is doing something insane that I don't know
about (they have considerable uptime).
I doubt any of those cards do any kind of wear leveling, sane or not.
Angstrom, or any other OS, has no control over the wear leveling on an
SD card, the internal controller to the card handles that.
I think maybe bones should ship with a different, better card if
possible.
That's not as easy as it sounds.
>> This page:
>> Is it true that a SD/MMC Card does wear levelling with its own controller? - Electrical Engineering Stack Exchange
>> contains comments pointing out that wear leveling and power cycle
>> tolerance are conflicting goals, and probably even fewer cards get
>> both right.
>
> I don't think wear leveling and power cycle tolerance have anything
> to do with each other.
>
> Wear leveling is just writing data to erase blocks that have had
> less writes rather than putting it somewhere else. Advanced modes
> may migrate static data out of low write-count blocks in order to
> even things out further. The goal is to wear all blocks at the
> same rate, such that no single block fails much before any other.
I would hope you would be correct, but if the migration process fails
to correctly use some sort of atomic lock then the posts on that page
saying it could corrupt any data on the disk (not just what's being
written) could be true. This panasonic ad implies (FUDs?) that many
cards aren't power-cycle tolerant:
http://panasonic.net/avc/sdcard/industrial_sd/function.html
During a garbage collection or other background operations, yes, if
power is lost you can lose data or end up with a disk where the state
is not know even by the controller. That is a risk with any flash based
storage.
Background operations might happen at any time, including garbage
collection or rewriting static data. This doesn't really have anything
to do with wear leveling other than some wear leveling algorithms may
do these background operations as well as other kinds of algorithms.
So my earlier statement about wear leveling and power loss sensitivity
isn't completely right, but rarely will SD cards do intense background
operations or wear leveling schemes like this. It's cost (dollars)
prohibitive to implement such abilities when 99% of customers won't
ever need them.
Unless you can get a data sheet on an SD card that describes the way it
does wear leveling and other background operations, we're all just
stabbing in the dark. Maybe Panasonic's cards do a great job, but I
have no data on that (and I assume if I did I wouldn't be allowed to
share it due to NDA).
I'm not sure where those Panasonic microSD cards can even be purchased.
> Cameras write in a nice linear fashion (usually), that's what the SD
> spec is written for. This crazy random writes that Linux (or any
> other non-camera) does is a brave new world for little SD cards.
Yes it seems like cameras would need to worry about it less. But.
My camera recently silently ate a bunch of pictures. And my droid SD
card has now entirely quit working. All together I've pretty well
lost all belief in SD card reliability unless somebody is ready to
promise otherwise.
No one's ready to promise otherwise 
At least not me.
>> Andrew, do you happen to be aware of anyone who sells SD cards that
>> *do* have good leveling/power cycle tolerance and *are* believed to
>> work well with the bone? I'd be happy to pay.
>
> Samsung Plus 8 GB uSD cards are generally considered quite good. I
> personally like the SanDisk mobile ultra 4 GB uSD cards the best
> but the larger sizes of this card are not as good (and 32 GB
> version has some major possible issues, avoid those). I've used
> both Samsung Plus and SanDisk ultra mobile on bones with no issues.
>
> If you're in the USA, BestBuy.com has 4 GB SanDisk mobile ultra
> cards for $4.99 each on sale.
Thanks, I'll try these. On a related note I see the blackbone has 2
DB eMMC which is supposedly more reliable, I wonder if it boots from
there out of the box or is an easy setup.
eMMC should work better than cheap SD cards. There's other benefits of
eMMC, too, mainly that the bus is wider so read throughput can be higher
than SDv2.00 (the write throughput on the eMMC used on the black isn't
stellar[1], assuming the BOM hasn't changed since then). Setup, if
you don't buy a black that boots from eMMC directly, is easy.
[1]:http://lists.linaro.org/pipermail/flashbench-results/2013-January/000353.html
-Andrew