﻿id	summary	reporter	owner	description	type	status	priority	milestone	component	version	severity	resolution	keywords	cc
71	FSH_DOVOLIO blocks on I/O errors with SSD's or USB flash sticks	Valery V. Sedletski	Valery V. Sedletski	"This problem is reported in #67 with SSD drives. I created a separate ticket because ticket #67 deals with another problem.

So, it looks like FSH_DOVOLIO hangs/blocks in the disk driver (USBMSD.ADD/OS2AHCI.ADD/DANIS506.ADD) when an I/O error occured. This can happen on both READ and WRITE requests. No hard error is reported to HARDERR.EXE daemon, and no error is returned by FSH_DOVOLIO. Currently, FSH_DOVOLIO is called with ACKNOWLEDGE flag. I also tried to add ABORT/RETRY/FAIL flags instead, or a flag to report an error to HARDERR.EXE, but this did not helped much. FSH_DOVOLIO just blocks in the disk driver. This can happen at boot time, or at shutdown time, when FSInfo sector is read or updated. So, the boot or shutdown process just hangs. Or I had such problems with some USB flash sticks. It just hangs when writing a big amount of data to the flash stick (> 200 MB). Also, if I correctly remember, I observed the same with DANIS506.ADD and a dying SATA or IDE drives. These were I/O errors, because I heard beeps from DaniS to a PC speaker. DaniS usually beeps on I/O errors (mostly when bad sectors are hit).

With SSD drives, it can occur even without the bad sectors, just temporary READ/WRITE errors. The user that reported this, checked his SSD's with special software and found no bad sectors. When he changed his SSD to another one, errors disappeared first, and everything booted ok. But later he observed read errors on this newer SSD too. The same is observed with USB drives on my machine. I have USB controller on my motherboard, and I began getting hangs when writing big data to my flash stick. This occured on some flash stick more frequently, on others less frequently. And very rare with the same flash sticks when trying on another machines. So, I decided that this is my USB controller is dying and causing many I/O errors (just like it was with my dying IDE drives). My machine is 12 years old, so I thought that my USB controller began dying. So, I bought a separate PCI board with additional USB controller. I had much lesser I/O errors on an external USB controller, even with the same flash sticks I had much errors with an integrated USB controller. But recently, I observed an I/O error on an external USB controller too. 

So, some SSD's or flash sticks or USB controllers cause more or less I/O errors. This is not necessarily bad blocks, but it may be some temporary errors. I tried to play with FSH_DOVOLIO flags, and this did not helped much. Everything looks like the blocking occurs in a disk driver. Maybe, this can be fixed on a disk driver side? The question remains open.

PS: So far, such errors was not observed on JFS drives. JFS does not use FSH_DOVOLIO, it calls a driver strat2/strat3 routine directly. HPFS386 seems to behave like JFS does. So, except for FAT32.IFS, this could be observed on HPFS, but not so far.
"	defect	assigned	major	Future	IFS		high		hang block disk error I/O usb ssd	
