RE: [PATCH v2] scsi: ufs: core: fix racing issue during ufshcd_mcq_abort

From: hoyoung seo
Date: Wed Nov 15 2023 - 20:56:32 EST


> -----Original Message-----
> From: Bart Van Assche <bvanassche@xxxxxxx>
> Sent: Thursday, November 16, 2023 3:22 AM
> To: hoyoung seo <hy50.seo@xxxxxxxxxxx>; linux-scsi@xxxxxxxxxxxxxxx; linux-
> kernel@xxxxxxxxxxxxxxx; alim.akhtar@xxxxxxxxxxx; avri.altman@xxxxxxx;
> jejb@xxxxxxxxxxxxx; martin.petersen@xxxxxxxxxx; beanhuo@xxxxxxxxxx;
> kwangwon.min@xxxxxxxxxxx; kwmad.kim@xxxxxxxxxxx; sh425.lee@xxxxxxxxxxx;
> sc.suh@xxxxxxxxxxx; quic_nguyenb@xxxxxxxxxxx; cpgs@xxxxxxxxxxx;
> grant.jung@xxxxxxxxxxx; junwoo80.lee@xxxxxxxxxxx
> Subject: Re: [PATCH v2] scsi: ufs: core: fix racing issue during
> ufshcd_mcq_abort
>
> On 11/14/23 21:27, hoyoung seo wrote:
> > The test_bit() function just check SCMD_STATE_COMPLETE bit state.
> > Do not set SCMD_STATE_COMPLETE field.
> > This function is also used in ufshcd_mcq_compl_pending_transfer()
> > to check the status of cmd.
>
> Right, I misread your patch. Can you please take a look at the following
> patch and verify whether it perhaps addresses the same issue that you want
> to address: https://lore.kernel.org/linux-scsi/20231115131024.15829-1-
> peter.wang@xxxxxxxxxxxx/
>
> Thanks,
>
> Bart.

Hi, Bart.

It seem that not same issue.
That problem is that the try_to_abort_task() function has already been
processed.
So clear_cmd() has been processed.

However, this issue was already completed IO request before executing clear_cmd().
So can't get utag to clean up sq.
This patch to prevent access to utag for cmd that has already been completed.

Thanks
Seo.