Groups | Search | Server Info | Keyboard shortcuts | Login | Register [http] [https] [nntp] [nntps]
Groups > linux.kernel > #1466886 > unrolled thread
| Started by | zhangfei <zhangfei.gao@linaro.org> |
|---|---|
| First post | 2016-08-21 02:50 +0200 |
| Last post | 2016-08-22 10:00 +0200 |
| Articles | 2 — 2 participants |
Back to article view | Back to linux.kernel
This discussion starts older than the indexed window; earlier articles aren't shown. The article labeled Started by
below is the oldest one visible, not the original post.
Re: [PATCH 1/8] hisi_sas: add internal abort core code zhangfei <zhangfei.gao@linaro.org> - 2016-08-21 02:50 +0200
Re: [PATCH 1/8] hisi_sas: add internal abort core code John Garry <john.garry@huawei.com> - 2016-08-22 10:00 +0200
| From | zhangfei <zhangfei.gao@linaro.org> |
|---|---|
| Date | 2016-08-21 02:50 +0200 |
| Subject | Re: [PATCH 1/8] hisi_sas: add internal abort core code |
| Message-ID | <s8p7z-1If-5@gated-at.bofh.it> |
On 2016年08月10日 21:19, John Garry wrote:
> Add core code for internal abort functionality.
>
> The internal abort features allows the host controller
> to abort commands which are still active in the
> controller but have not yet been sent to the slave
> device.
>
> Typically a command only spends a relatively
> short time in the controller when compared to the
> amount of the time after it is sent to the slave
> device.
> Two modes of internal abort are supported:
> - device
> - individual command
>
> For device, when the internal abort is issued all
> commands in the host for that device are aborted.
> For a single command, only that command is aborted
> if it is still in the host.
>
> In HW the internal abort command is executed
> similar to any other sort of command, like SSP.
>
> Signed-off-by: John Garry <john.garry@huawei.com>
> ---
> drivers/scsi/hisi_sas/hisi_sas.h | 3 +
> drivers/scsi/hisi_sas/hisi_sas_main.c | 154 ++++++++++++++++++++++++++++++++++
> 2 files changed, 157 insertions(+)
>
> diff --git a/drivers/scsi/hisi_sas/hisi_sas.h b/drivers/scsi/hisi_sas/hisi_sas.h
> index 4731d32..4ae864d 100644
> --- a/drivers/scsi/hisi_sas/hisi_sas.h
> +++ b/drivers/scsi/hisi_sas/hisi_sas.h
> @@ -146,6 +146,9 @@ struct hisi_sas_hw {
> struct hisi_sas_slot *slot);
> int (*prep_stp)(struct hisi_hba *hisi_hba,
> struct hisi_sas_slot *slot);
> + int (*prep_abort)(struct hisi_hba *hisi_hba,
> + struct hisi_sas_slot *slot,
> + int device_id, int abort_flag, int tag_to_abort);
How about add comments to abort_flag and tag_to_abort.
As a result, not sure why differently calling in hisi_sas_abort_task
hisi_sas_internal_task_abort(hisi_hba, device, 1, tag);
hisi_sas_internal_task_abort(hisi_hba, device, 0, tag);
Thanks
[toc] | [next] | [standalone]
| From | John Garry <john.garry@huawei.com> |
|---|---|
| Date | 2016-08-22 10:00 +0200 |
| Message-ID | <s8Sjg-3ra-19@gated-at.bofh.it> |
| In reply to | #1466886 |
On 21/08/2016 01:44, zhangfei wrote:
>
>
> On 2016年08月10日 21:19, John Garry wrote:
>> Add core code for internal abort functionality.
>>
>> The internal abort features allows the host controller
>> to abort commands which are still active in the
>> controller but have not yet been sent to the slave
>> device.
>>
>> Typically a command only spends a relatively
>> short time in the controller when compared to the
>> amount of the time after it is sent to the slave
>> device.
>> Two modes of internal abort are supported:
>> - device
>> - individual command
>>
>> For device, when the internal abort is issued all
>> commands in the host for that device are aborted.
>> For a single command, only that command is aborted
>> if it is still in the host.
>>
>> In HW the internal abort command is executed
>> similar to any other sort of command, like SSP.
>>
>> Signed-off-by: John Garry <john.garry@huawei.com>
>> ---
>> drivers/scsi/hisi_sas/hisi_sas.h | 3 +
>> drivers/scsi/hisi_sas/hisi_sas_main.c | 154
>> ++++++++++++++++++++++++++++++++++
>> 2 files changed, 157 insertions(+)
>>
>> diff --git a/drivers/scsi/hisi_sas/hisi_sas.h
>> b/drivers/scsi/hisi_sas/hisi_sas.h
>> index 4731d32..4ae864d 100644
>> --- a/drivers/scsi/hisi_sas/hisi_sas.h
>> +++ b/drivers/scsi/hisi_sas/hisi_sas.h
>> @@ -146,6 +146,9 @@ struct hisi_sas_hw {
>> struct hisi_sas_slot *slot);
>> int (*prep_stp)(struct hisi_hba *hisi_hba,
>> struct hisi_sas_slot *slot);
>> + int (*prep_abort)(struct hisi_hba *hisi_hba,
>> + struct hisi_sas_slot *slot,
>> + int device_id, int abort_flag, int tag_to_abort);
>
> How about add comments to abort_flag and tag_to_abort.
> As a result, not sure why differently calling in hisi_sas_abort_task
> hisi_sas_internal_task_abort(hisi_hba, device, 1, tag);
> hisi_sas_internal_task_abort(hisi_hba, device, 0, tag);
>
> Thanks
>
>
> .
>
OK, I can do.
I will add a MACRO for the abort flag, whether device abort or single IO
abort modes.
I will also mention for device abort mode that the tag is unused.
Thanks,
John
[toc] | [prev] | [standalone]
Back to top | Article view | linux.kernel
csiph-web