Messages in this thread | | | Date | Wed, 28 Sep 2022 14:50:01 +0100 | Subject | Re: [PATCH 1/6] scsi: libsas: Add sas_task_find_rq() | From | John Garry <> |
| |
On 28/09/2022 14:13, Jason Yan wrote: >> +++ b/include/scsi/libsas.h >> @@ -644,6 +644,28 @@ static inline bool sas_is_internal_abort(struct >> sas_task *task) >> return task->task_proto == SAS_PROTOCOL_INTERNAL_ABORT; >> } >> +static inline struct request *sas_task_find_rq(struct sas_task *task) >> +{ >> + struct scsi_cmnd *scmd; >> + >> + if (!task || !task->uldd_task) >> + return NULL; >> + >> + if (task->task_proto & SAS_PROTOCOL_STP_ALL) { >> + struct ata_queued_cmd *qc; >> + >> + qc = task->uldd_task; >> + scmd = qc->scsicmd; > > Can we remove that local qc? >
We could...
> and > scmd = ((struct ata_queued_cmd *)task->uldd_task)->scsicmd;
... but I am not really sure that this is much better, specifically because of the casting from void. If you feel really strongly about it I could.
thanks, John
| |