Re: UFS writing request failure handling

From: Bart Van Assche
Date: Mon Feb 12 2018 - 13:13:30 EST


On 02/12/18 04:21, Bean Huo (beanhuo) wrote:
I am looking at UFS error handling, but I didn't notice re-issues
requests with UTP error to the host controller. According UFS host
spec, "host software either completes the request that had the error
and requests still outstanding with error to higher level software,
or re-issues these requests to the host controller". For the latest
Linux UFS driver, it belongs to former one? If I am wrong, please
correct me.

Hello Bean,

I'm afraid that reissuing a failed write forever could cause an infinite loop that makes e.g. user space processes unkillable or that could cause an orderly system shutdown to hang. I'm not sure that we want such behavior.

If you want to learn more about how the SCSI core handles failed writes, please have a look at scsi_decide_disposition(). A possible approach to modify the error handling behavior is to stack a dm driver on top of the SCSI core that implements the desired behavior.

Bart.