[TriLUG] Flash Friendly Filesystems: was e2fsck under cron gets retcode=8 operational error

Thomas Gardner tmg at pobox.com
Fri Sep 21 19:57:48 EDT 2012


I think I read somewhere that USB flash drives all have some kind of
wear leveling build into them, and I was under the impression that you
really couldn't turn it off if you wanted to.  I could be wrong on
that, though.

I once tried to see if I could wear out a 1Gig SD card.  I was really
trying to see if junk brands would wear out faster than name brand
ones.  I had three of them (two cheap and one name brand) plugged into
three converters that were then plugged into a hub that was plugged
into a slug (very slow, but fast enough that I/O still seemed to be
the bottleneck not the slug).  I had three processes running that
would write a file of random data (generated from /dev/random on a
faster machine and dumped on the slug to keep from slowing the slug
down) each file twice the size of physical memory (so it couldn't be
cached), and then compare, over and over until you couldn't get any
more files on, then wipe it all out and start all over.  I think it
ran for something like six months (maybe even a year, I don't remember
but it was a LONG time) 24X7 and I only had something like a single
miscompare on each SD card.  It was at that point I decided that I
didn't really have to worry about SD cards wearing out in my
application regardless of whose name was on the outside.  I would
imagine USB thumb drives are probably pretty much the same.

Looking back on it, I probably should have just left the drive almost
completely full and only had enough room left for a single file and
just kept writing that one last little bit over and over.  I might
have gotten some action out of that.  I won't be repeating the
experiment to find out, though.

On 9/21/12, matt at noway2.thruhere.net <matt at noway2.thruhere.net> wrote:
>
>> Not necessarily.  I would assume that you could bypass the firmware
>> and use it in raw mode with a command to the flash drive, but I
>> haven't tried to do that.
>
> Several years ago, I worked on a USB host controller project to allow an
> embedded system to use a USB Flash stick.  If I recall correctly, the USB
> provided 3 end point descriptors: one for the control port and 2 for the
> bulk transport (one up, one down).  From there you were able to use
> wrappers to encapsulate the SCSI command set.  I don't recall seeing any
> options for raw access, below that of the logical file system (sector
> number access).
>
> To see what options would be available, try using USB Snoopy to see if you
> can catch the end point descriptors during the USB enumeration.  You may
> also be able to get this information from a lookup of the vendor and
> hardware ID.
>
> --
> This message was sent to: Thomas Gardner <tmg at pobox.com>
> To unsubscribe, send a blank message to trilug-leave at trilug.org from that
> address.
> TriLUG mailing list : http://www.trilug.org/mailman/listinfo/trilug
> Unsubscribe or edit options on the web	:
> http://www.trilug.org/mailman/options/trilug/tmg%40pobox.com
> TriLUG FAQ          : http://www.trilug.org/wiki/Frequently_Asked_Questions
>



More information about the TriLUG mailing list