From patchwork Mon Aug 26 03:45:08 2024 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: =?utf-8?b?UGV0ZXIgV2FuZyAo546L5L+h5Y+LKQ==?= X-Patchwork-Id: 13777047 Return-Path: X-Spam-Checker-Version: SpamAssassin 3.4.0 (2014-02-07) on aws-us-west-2-korg-lkml-1.web.codeaurora.org Received: from bombadil.infradead.org (bombadil.infradead.org [198.137.202.133]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by smtp.lore.kernel.org (Postfix) with ESMTPS id EB508C5320E for ; Mon, 26 Aug 2024 03:45:52 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=lists.infradead.org; s=bombadil.20210309; h=Sender:List-Subscribe:List-Help :List-Post:List-Archive:List-Unsubscribe:List-Id:Content-Type:MIME-Version: References:In-Reply-To:Message-ID:Date:Subject:CC:To:From:Reply-To: Content-Transfer-Encoding:Content-ID:Content-Description:Resent-Date: Resent-From:Resent-Sender:Resent-To:Resent-Cc:Resent-Message-ID:List-Owner; bh=Q/hVDi5QlE7twKetiUuJWI0sQsaizIXKv/4S0mRRLMs=; b=nCM2QpGqA7vfRoknDUF/5bk1kW RROcvbnIDJi43RhYv2/f8OYmkKF+6dh+tHrMYiKfRpH9MoL3JidIZLFypmUX6NXrAEmy0yxKVAOWL M5a4RnNVvHseKpGGctqbivq9L6zwSIzFlAinVPHKrBOAYvGSZjWlTgZhDZNZax6nuz7vvw0BwQnG1 10dHwSVWQNYubjK/uL8scYfLQc1cJhZ9lDDHgkNUeQ2sVMj3pOW4GlxMBv18T73x03v8dWhSvrbnw l7t9kG14mlyTEWsfzLxLw3D7olB6qLOSDiNqImxh8/Yc1BnRy+ywm1X/y4ARYVCf+w3RBt+A7d59/ q0kGQkCg==; Received: from localhost ([::1] helo=bombadil.infradead.org) by bombadil.infradead.org with esmtp (Exim 4.97.1 #2 (Red Hat Linux)) id 1siQfw-00000005gNv-29Bt; Mon, 26 Aug 2024 03:45:52 +0000 Received: from mailgw01.mediatek.com ([216.200.240.184]) by bombadil.infradead.org with esmtps (Exim 4.97.1 #2 (Red Hat Linux)) id 1siQfs-00000005gN8-2ZeY for linux-mediatek@lists.infradead.org; Mon, 26 Aug 2024 03:45:50 +0000 X-UUID: ac9d194a635d11efb3adad29d29602c1-20240825 DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=mediatek.com; s=dk; h=Content-Type:MIME-Version:References:In-Reply-To:Message-ID:Date:Subject:CC:To:From; bh=Q/hVDi5QlE7twKetiUuJWI0sQsaizIXKv/4S0mRRLMs=; b=GCiYOFcZYbOGs5TCngnsCNFQXZPTzHMsmI0PYRRhgSZ0Jp8q3+K2yD+pMF5RbTSLFLGbdMZo881waUwgbtp+Sed3ycQOSs/NLria6MNyoIHs00KFrMvjUlfAN7Sei++b+uztU+8iCzqu1FCZfoIi3J8iX+KeXzzSh+BdgTNcVQs=; X-CID-P-RULE: Release_Ham X-CID-O-INFO: VERSION:1.1.41,REQID:5b3f1fcc-7e8a-409d-ab05-1b21271ac42e,IP:0,U RL:0,TC:0,Content:-25,EDM:0,RT:0,SF:0,FILE:0,BULK:0,RULE:Release_Ham,ACTIO N:release,TS:-25 X-CID-META: VersionHash:6dc6a47,CLOUDID:1dc4c814-737d-40b3-9394-11d4ad6e91a1,B ulkID:nil,BulkQuantity:0,Recheck:0,SF:102,TC:nil,Content:0,EDM:-3,IP:nil,U RL:11|1,File:nil,RT:nil,Bulk:nil,QS:nil,BEC:nil,COL:0,OSI:0,OSA:0,AV:0,LES :1,SPR:NO,DKR:0,DKP:0,BRR:0,BRE:0,ARC:0 X-CID-BVR: 0 X-CID-BAS: 0,_,0,_ X-CID-FACTOR: TF_CID_SPAM_SNR,TF_CID_SPAM_ULN X-UUID: ac9d194a635d11efb3adad29d29602c1-20240825 Received: from mtkmbs09n1.mediatek.inc [(172.21.101.35)] by mailgw01.mediatek.com (envelope-from ) (musrelay.mediatek.com ESMTP with TLSv1.2 ECDHE-RSA-AES256-GCM-SHA384 256/256) with ESMTP id 712623602; Sun, 25 Aug 2024 20:45:45 -0700 Received: from mtkmbs11n1.mediatek.inc (172.21.101.185) by MTKMBS09N2.mediatek.inc (172.21.101.94) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.2.1118.26; Sun, 25 Aug 2024 20:45:11 -0700 Received: from mtksdccf07.mediatek.inc (172.21.84.99) by mtkmbs11n1.mediatek.inc (172.21.101.73) with Microsoft SMTP Server id 15.2.1118.26 via Frontend Transport; Mon, 26 Aug 2024 11:45:11 +0800 From: To: , , , , CC: , , , , , , , , , , , , , , , Subject: [PATCH v2 1/2] ufs: core: complete scsi command after release Date: Mon, 26 Aug 2024 11:45:08 +0800 Message-ID: <20240826034509.17677-2-peter.wang@mediatek.com> X-Mailer: git-send-email 2.18.0 In-Reply-To: <20240826034509.17677-1-peter.wang@mediatek.com> References: <20240826034509.17677-1-peter.wang@mediatek.com> MIME-Version: 1.0 X-MTK: N X-CRM114-Version: 20100106-BlameMichelson ( TRE 0.8.0 (BSD) ) MR-646709E3 X-CRM114-CacheID: sfid-20240825_204548_675010_CCBEF22A X-CRM114-Status: GOOD ( 11.75 ) X-BeenThere: linux-mediatek@lists.infradead.org X-Mailman-Version: 2.1.34 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Sender: "Linux-mediatek" Errors-To: linux-mediatek-bounces+linux-mediatek=archiver.kernel.org@lists.infradead.org From: Peter Wang When the error handler successfully aborts a MCQ request, it only releases the command and does not notify the SCSI layer. This may cause another abort after 30 seconds timeout. This patch notifies the SCSI layer to requeue the request. Below is error log [ 14.183804][ T74] ufshcd-mtk 112b0000.ufshci: ufshcd_err_handler started; HBA state eh_non_fatal; powered 1; shutting down 0; saved_err = 4; saved_uic_err = 64; force_reset = 0 [ 14.256164][ T74] ufshcd-mtk 112b0000.ufshci: ufshcd_try_to_abort_task: cmd pending in the device. tag = 19 [ 14.257511][ T74] ufshcd-mtk 112b0000.ufshci: Aborting tag 19 / CDB 0x35 succeeded [ 34.287949][ T8] ufshcd-mtk 112b0000.ufshci: ufshcd_abort: Device abort task at tag 19 [ 34.290514][ T8] ufshcd-mtk 112b0000.ufshci: ufshcd_mcq_abort: skip abort. cmd at tag 19 already completed. Fixes:93e6c0e19d5b ("scsi: ufs: core: Clear cmd if abort succeeds in MCQ mode") Cc: 6.6.x Signed-off-by: Peter Wang Reviewed-by: Bart Van Assche --- drivers/ufs/core/ufshcd.c | 6 +++++- 1 file changed, 5 insertions(+), 1 deletion(-) diff --git a/drivers/ufs/core/ufshcd.c b/drivers/ufs/core/ufshcd.c index 0b3d0c8e0dda..4bcd4e5b62bd 100644 --- a/drivers/ufs/core/ufshcd.c +++ b/drivers/ufs/core/ufshcd.c @@ -6482,8 +6482,12 @@ static bool ufshcd_abort_one(struct request *rq, void *priv) if (!hwq) return 0; spin_lock_irqsave(&hwq->cq_lock, flags); - if (ufshcd_cmd_inflight(lrbp->cmd)) + if (ufshcd_cmd_inflight(lrbp->cmd)) { + struct scsi_cmnd *cmd = lrbp->cmd; + set_host_byte(cmd, DID_REQUEUE); ufshcd_release_scsi_cmd(hba, lrbp); + scsi_done(cmd); + } spin_unlock_irqrestore(&hwq->cq_lock, flags); } From patchwork Mon Aug 26 03:45:09 2024 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: =?utf-8?b?UGV0ZXIgV2FuZyAo546L5L+h5Y+LKQ==?= X-Patchwork-Id: 13777046 Return-Path: X-Spam-Checker-Version: SpamAssassin 3.4.0 (2014-02-07) on aws-us-west-2-korg-lkml-1.web.codeaurora.org Received: from bombadil.infradead.org (bombadil.infradead.org [198.137.202.133]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by smtp.lore.kernel.org (Postfix) with ESMTPS id 31AEBC5321E for ; Mon, 26 Aug 2024 03:45:53 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=lists.infradead.org; s=bombadil.20210309; h=Sender:List-Subscribe:List-Help :List-Post:List-Archive:List-Unsubscribe:List-Id:Content-Type:MIME-Version: References:In-Reply-To:Message-ID:Date:Subject:CC:To:From:Reply-To: Content-Transfer-Encoding:Content-ID:Content-Description:Resent-Date: Resent-From:Resent-Sender:Resent-To:Resent-Cc:Resent-Message-ID:List-Owner; bh=V9BffS1yIKEDqiempHbn9a8orD7egiUP74LZ/SGn2Og=; b=1A18AiBY1jqeC2gCUF4knTk8Vh spnc1sYqnVjhQezSG4WlpM3wpM55gGNKEpwc8EzAivlrm4Tggfi5KZ1JmMB1eFmcUStnhZwm5w42C BaovMK/dFsr5HpLgo0KLiT8jNMbTm7dkD7PNKEvlZEE2wLU2nZ8v1IjZ9qkefNaaDcdlFJGGfIRxX TjO4cJL6+LbHuqpPtWE2mZ1m/PyJn/EwBQglL//2R5+lsba4PJttnsZH0wHj9TAUdyRP1o/tyTZja MYBDqJ14RaIt4GUHRQ+MLaDIKNNbjHqKiyMt5RLhIgzyrLIufR75Fi43C9eO42qe3iiBXhEyO6V4G I8VWpZ4g==; Received: from localhost ([::1] helo=bombadil.infradead.org) by bombadil.infradead.org with esmtp (Exim 4.97.1 #2 (Red Hat Linux)) id 1siQfw-00000005gO4-3VjC; Mon, 26 Aug 2024 03:45:52 +0000 Received: from mailgw01.mediatek.com ([216.200.240.184]) by bombadil.infradead.org with esmtps (Exim 4.97.1 #2 (Red Hat Linux)) id 1siQft-00000005gNP-2AVO for linux-mediatek@lists.infradead.org; Mon, 26 Aug 2024 03:45:50 +0000 X-UUID: ad08dafe635d11efb3adad29d29602c1-20240825 DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=mediatek.com; s=dk; h=Content-Type:MIME-Version:References:In-Reply-To:Message-ID:Date:Subject:CC:To:From; bh=V9BffS1yIKEDqiempHbn9a8orD7egiUP74LZ/SGn2Og=; b=nxgO+a7SeZefETDSjgz34khF+K5TUb1XQ/7u8g/a3x9GkYnrn75JrWNy0pH/QPc3GA91lHSQ8erwzcAcsle6ly6lJWAjRR60WKKdmrzB5jnuMjGD3qCuIjY1EE3WcxwSIENrw2tQtjNATOi7QRL5ts8FldyQBVvT+3+9jbdSV4Q=; X-CID-P-RULE: Release_Ham X-CID-O-INFO: VERSION:1.1.41,REQID:b175951f-ff01-4616-bc5e-b5fe40a6ec3b,IP:0,U RL:0,TC:0,Content:0,EDM:0,RT:0,SF:0,FILE:0,BULK:0,RULE:Release_Ham,ACTION: release,TS:0 X-CID-META: VersionHash:6dc6a47,CLOUDID:28802acf-7921-4900-88a1-3aef019a55ce,B ulkID:nil,BulkQuantity:0,Recheck:0,SF:102,TC:nil,Content:0,EDM:-3,IP:nil,U RL:11|1,File:nil,RT:nil,Bulk:nil,QS:nil,BEC:nil,COL:0,OSI:0,OSA:0,AV:0,LES :1,SPR:NO,DKR:0,DKP:0,BRR:0,BRE:0,ARC:0 X-CID-BVR: 0 X-CID-BAS: 0,_,0,_ X-CID-FACTOR: TF_CID_SPAM_ULN,TF_CID_SPAM_SNR X-UUID: ad08dafe635d11efb3adad29d29602c1-20240825 Received: from mtkmbs09n1.mediatek.inc [(172.21.101.35)] by mailgw01.mediatek.com (envelope-from ) (musrelay.mediatek.com ESMTP with TLSv1.2 ECDHE-RSA-AES256-GCM-SHA384 256/256) with ESMTP id 639760607; Sun, 25 Aug 2024 20:45:45 -0700 Received: from mtkmbs11n1.mediatek.inc (172.21.101.185) by MTKMBS09N2.mediatek.inc (172.21.101.94) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.2.1118.26; Sun, 25 Aug 2024 20:45:11 -0700 Received: from mtksdccf07.mediatek.inc (172.21.84.99) by mtkmbs11n1.mediatek.inc (172.21.101.73) with Microsoft SMTP Server id 15.2.1118.26 via Frontend Transport; Mon, 26 Aug 2024 11:45:11 +0800 From: To: , , , , CC: , , , , , , , , , , , , , , Subject: [PATCH v2 2/2] ufs: core: force reset after mcq abort all Date: Mon, 26 Aug 2024 11:45:09 +0800 Message-ID: <20240826034509.17677-3-peter.wang@mediatek.com> X-Mailer: git-send-email 2.18.0 In-Reply-To: <20240826034509.17677-1-peter.wang@mediatek.com> References: <20240826034509.17677-1-peter.wang@mediatek.com> MIME-Version: 1.0 X-MTK: N X-CRM114-Version: 20100106-BlameMichelson ( TRE 0.8.0 (BSD) ) MR-646709E3 X-CRM114-CacheID: sfid-20240825_204549_565963_51E41F8B X-CRM114-Status: GOOD ( 10.47 ) X-BeenThere: linux-mediatek@lists.infradead.org X-Mailman-Version: 2.1.34 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Sender: "Linux-mediatek" Errors-To: linux-mediatek-bounces+linux-mediatek=archiver.kernel.org@lists.infradead.org From: Peter Wang In mcq mode gerneal case, cq (head/tail) pointer is same as sq pointer (head/tail) if the hwq is empty. But if command send to device and abort it, no response return and cq point will less than sq. In this case will have unpredictable error. This patch force reset for this case. Below is error log [ 34.976612][ C3] ufshcd-mtk 112b0000.ufshci: OCS error from controller = 3 for tag 19 Signed-off-by: Peter Wang --- drivers/ufs/core/ufshcd.c | 2 ++ 1 file changed, 2 insertions(+) diff --git a/drivers/ufs/core/ufshcd.c b/drivers/ufs/core/ufshcd.c index 4bcd4e5b62bd..d9ef8f0279da 100644 --- a/drivers/ufs/core/ufshcd.c +++ b/drivers/ufs/core/ufshcd.c @@ -6519,6 +6519,8 @@ static bool ufshcd_abort_all(struct ufs_hba *hba) /* Complete the requests that are cleared by s/w */ ufshcd_complete_requests(hba, false); + if (is_mcq_enabled(hba)) + return true; return ret != 0; }