Alexander Leidinger

Just another weblog


Are USB mem­ory sticks really that bad?

Last week my ZFS cache device — an USB mem­ory stick — showed xxxM write errors. I got this stick for free as a promo, so I do not expect it to be of high qual­ity (or wear-leveling or sim­i­lar life-saving things). The stick sur­vived about 9 months, dur­ing which it pro­vided a nice speed-up for the access to the cor­re­spond­ing ZFS stor­age pool. I replaced it by another stick which I got for free as a promo. This new stick sur­vived… one long week­end. It has now 8xxM write errors and the USB sub­sys­tem is not able to speak to it any­more. 30 min­utes ago I issued an “usb­con­fig reset” to this device, which is still not fin­ished. This leads me to the ques­tion if such sticks are really that bad, or if some prob­lem crept into the USB subsystem?

If this is a prob­lem with the mem­ory stick itself, I should be able to repro­duce such a prob­lem on a dif­fer­ent machine with a dif­fer­ent OS. I could test this with FreeBSD 8.1, Solaris 10u9, or Win­dows XP. What I need is an auto­mated test. This rules out the Win­dows XP machine for me, I do not want to spend time to search a suit­able test which is avail­able for free and allows to be run in an auto­mated way. For FreeBSD and Solaris it prob­a­bly comes down to use some disk-I/O bench­mark (I think there are enough to chose from in the FreeBSD Ports Col­lec­tion) and run it in a shell–loop.


Tags: , , , , , , , , ,

14 Responses to “Are USB mem­ory sticks really that bad?”

  1. Lars Hartmann Says:

    Yes they are — from my expe­ri­ence, most sticks won’t sur­vive that long..

  2. Tweets that mention Are USB memory sticks really that bad? | Alexander Leidinger -- Says:

    […] This post was men­tioned on Twit­ter by FreeBSD Project and James Gal­lagher, azedo news. azedo news said: Are USB mem­ory sticks really that bad?: Last week my ZFS cache device — an USB mem­ory stick — showed xxxM writ… […]

  3. mth Says:

    Curi­ous if you are run­ning amd or intel? I have heard sim­i­lar sto­ries on sev­eral amd chipsets.

  4. netchild Says:

    This is with an Intel ICH5 chipset. And the first stick was work­ing 9 months with­out prob­lems, so I doubt this is Intel vs. AMD here.

  5. ivoras Says:

    Try the fsx test from src tools — it does a ran­dom mix of var­i­ous IO.

  6. Freddie Says:

    I’m inclined to believe it’s bad sticks, and not bad USB stack.

    I use a San­Disk U3 Cruzer Micro 2 GB USB stick for the OS at home (FreeBSD 8.1-STABLE). Has sur­vived many install­worlds as the sys­tem started with 6.something, and I like to fid­dle with ker­nel options so there’s a lot of writes going to it every 6 weeks or so. This stick was also used for doc­u­ments before being co-opted for OS installs.

    I also use a 4 GB Jet­Flash for L2ARC and swap in the above sys­tem. Been run­ning fine for sev­eral months now, and sits at 90% full all the time. No prob­lems so far.

    How­ever, 2x 2 GB Kingston USB sticks died on me within weeks of each other, and within a month of being put into use on a server. Even as L2ARC devices, they couldn’t keep up and would just drop off the USB con­troller. Try­ing to use them as sim­ple floppy replace­ments didn’t work too well, either.

    I have another 1 GB stick at home that worked fine for about 3 months, and then just stopped being detected in Win­dows XP, Kubuntu 9.something, or FreeBSD 8.x.

    It’s very much hit-and-miss on whether or not a USB stick is going to be fast (read or write) and how long it’s going to last. Unfor­tu­nately, nei­ther price nor name brand seem to be reli­able deter­mi­na­tions of the USB stick’s qual­ity, endurance, or speed. :(

  7. David Says:


    > Mem­ory wear

    > Another lim­i­ta­tion is that flash mem­ory has a finite num­ber of program-erase cycles (typ­i­cally writ­ten as P/E cycles). Most com­mer­cially avail­able flash prod­ucts are guar­an­teed to with­stand around 100,000 P/E cycles, before the wear begins to dete­ri­o­rate the integrity of the storage.[7]


    It’s how the tech­nol­ogy works

  8. netchild Says:

    And because of this I thought the first stick was “fin­ished”. But the sec­ond stick which did not even sur­vive a long week­end, was “fresh”.

  9. netchild Says:

    I con­nected the first USB mem­ory stick which was fail­ing to a Solaris 10u9 machine. I cre­ated a ZFS on it (to be able to detect silent cor­rup­tions), and am run­ning some tor­ture tests.

    In the morn­ing I had fsx run­ning on it, but it did not eat up a lot of mem­ory on the stick, so I switched to postmark.

    Since about 4 hours I have post­mark run­ning on it to test for prob­lems. So far ZFS did not detect any corruptions.

    I will let it run the whole night, and if there are still no prob­lems tomor­row, I assume the stick is OK (as it will have had much more traf­fic seen dur­ing this time than it would have had in an entire week as a ZFS cache device on my machine at home).

  10. netchild Says:

    It seems that at least those sticks I have, are not that bad.

    I tested the first stick which failed first on Solaris 10u9 and the sec­ond stick with another FreeBSD machine, and both do not show traces of prob­lems there. The first stick attached back to the machine which exhib­ited the prob­lems ini­tially shows prob­lems again.

    To deter­mine if it is the USB hard­ware or the FreeBSD USB ker­nel sub­sys­tem, I will step by step update the other FreeBSD machine which did not exhibit the prob­lems to more recent ver­sions of FreeBSD (binary search) until I encounter a prob­lem with the USB stick (or arrive at the same FreeBSD ver­sion as the machine with the problems).

  11. ackstorm Says:

    In FreeBSD 8.0 I was using a 250GB USB Sea­gate drive as my mir­ror in ZFS. When I installed 8.1 I found my device could no longer sync to the inter­nal disk any­more. It always had write errors and reset the sync, over and over, never finishing.

    The drive works fine on 8.0 or on Linux, maybe you are on to something…

  12. netchild Says:

    Did you con­sider writ­ting to usb@ with your prob­lem? I have the impres­sion that your prob­lem is a dif­fer­ent one (and can maybe solved with a lit­tle quirk-entry). If you didn’t write to usb@ I sug­gest to do it. Pro­vide them a copy&paste of your USB related dmesg out­put and of the error messages.

    I only have some­times write errors, not always. And I do not have sync-resets for sure.

  13. netchild Says:

    After a lot of test­ing with two machines, I am now at a point where I think the EHCI part of the ICH5 chipset of this machine is dying (and the USB mem­ory sticks are still work­ing cor­rectly when attached to another machine).

  14. itetcu@ Says:

    I’ve used two 1GB King­max Super Stick on my desk­top as cache devices (I run a zRAID2 on it). They both gave up at a few days inter­val after some 6 – 7 months. So used this way, I’d say they are bad enough.

Leave a Reply