Re: UFS writing request failure handling

2018-02-13 Thread Bean Huo (beanhuo)
Hi Bart
Thanks for your answer.
I looked at SCSI core source codes these days, UFS also follows SCSI core error 
handling.
There is already re-issue behavior, and assign 5 retries for each UFS request 
if there is error.

>
>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.


Re: UFS writing request failure handling

2018-02-12 Thread Bart Van Assche

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.


UFS writing request failure handling

2018-02-12 Thread Bean Huo (beanhuo)
Hi, 
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.
Thanks!