Other Errors reading from USB flash drive after few hours of idle?

Greetings,

I've encountered a problem, where an external USB flash drive starts giving read errors when host is left sitting idle, about 13 hours after boot, in this particular case, according to the logs:
Code:
(da0:umass-sim0:0:0:0): READ(10). CDB: 28 00 00 0d b7 a0 00 00 50 00
(da0:umass-sim0:0:0:0): CAM status: CCB request completed with an error
(da0:umass-sim0:0:0:0): Retrying command
...
(da0:umass-sim0:0:0:0): Error 5, Retries exhausted
g_vfs_done():ufs/cdnrootfs1[READ(offset=459227136, length=40960)]error = 5
...
g_vfs_done():vnode_pager_getpages: I/O read error
ufs/cdnrootfs1[READ(offset=130424832, length=12288)]
vm_fault: pager read error, pid 67824 (sendmail)
This is a nanobsd installation, and since root file system is on this flash drive the OS gets unusable. However host boots successfully if restarted and dd if=/dev/da0 of=/dev/null completes with no errors. camcontrol devlist says the flash drive is "Kingston DataTraveler 2.0 PMAP".

That being said, next to this problem host there is another physical host, with different hardware configuration and different flash drive, but running mostly the same nanobsd install for more that 4 days, with no problems at all.

Is it possible this, fairly old, 4GB Kingston flash drive to be confused after entering powersave mode and can it be recovered/reconnected somehow, if so?

Is it possible to disable powersave mode for this specific USB flash drive or for USB mass storage subsystem at all?

Any suggestions on how to test if a particular flash drive can survive powersave -- i.e. to manually force a device to enter powersave mode?

Any other suggestions are also welcome!

Thank you!
 
I had similar quirks when using some Kingston USB 3.0 flash drive as an UFS root.

The easiest fix is to use a stick from a different manufacturer. I have been happy with SanDisk Extreme flash drives.
 
Back
Top