Received: by 2002:a05:7412:b130:b0:e2:908c:2ebd with SMTP id az48csp116709rdb; Thu, 16 Nov 2023 13:35:29 -0800 (PST) X-Google-Smtp-Source: AGHT+IHIx7eVEct742bjpgDnufX6bP+Zj5bvw8C2HrheETQr+qzdsZ+UsbrSlTPjOtBAI3+nbEtO X-Received: by 2002:a05:6a20:158a:b0:186:a986:9706 with SMTP id h10-20020a056a20158a00b00186a9869706mr13863478pzj.47.1700170528858; Thu, 16 Nov 2023 13:35:28 -0800 (PST) ARC-Seal: i=1; a=rsa-sha256; t=1700170528; cv=none; d=google.com; s=arc-20160816; b=ibYsAOGsEQ8XowjWLrWU4RowDsQyrOufB7ZMscDslhBt6BFdBLeswVW/BHDjWvQqJ5 Nekg62XdjEpUcO5ZJeYe0lwnYGaTfGK8BO19E4+vP4MQL37Zc0LED2/cE87+jfdMQzyo 9Dw3l63cK2KXvCs/5czgsMBcz/g6jQ2sSlIYhc9GYhqBdAOmSnqN1yrS8HPTLYgrSIIR a01x4nItczA5sNIwLRbN+LammCfSRh1kLdB62MHBGn02HK6hITNXmbqXwNWUq1ZpVuwh SW2J+augiSOKvmG7HJlsEF5Fr4Gy3O4X9H6UT659qhtsAuwO6y6dcT0YUf9t0OIkZ/qw 9RdQ== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=list-id:precedence:content-transfer-encoding:in-reply-to:from :references:to:content-language:subject:user-agent:mime-version:date :message-id; bh=8Lg5JQN/IO4naSkyvjuyEMADD75Wozkh18eEuNQzW8w=; fh=biyZtyo+lyFTr3jHH+X0QGgsgOlR4nT+nd24InedqJI=; b=yfKtaJnN4sPy2nhW1Qt05XK30DIJdw7MLGlbRICSlhc64YjqsSEfq3NtW6kQMEdPi+ URwry+swzxtWSpEK2tMGpUxH2/VgEJTcH7lt6IXOPb3BpUYDtVI2txsu3XWelcZbgtg3 +oQDX+88UFvHLsUNtjRmWHbEcMaTetWofuf2hmG6BwjJqhapenMOfCPyxyzOzendV2K5 XohzGyznVHNDBfeMthUlhoL22XGmrCBkGKsxrKdLMDsfbhxt93ECdl9/FFsZ0q8Ejx85 +7Te513qVz352XmiMgVXAbYkmGufl3wGUb/YzhXjAzQL715fkGMc/Mfuh4a9STNtSgL5 KKpg== ARC-Authentication-Results: i=1; mx.google.com; spf=pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 2620:137:e000::3:2 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org; dmarc=fail (p=NONE sp=NONE dis=NONE) header.from=acm.org Return-Path: Received: from agentk.vger.email (agentk.vger.email. [2620:137:e000::3:2]) by mx.google.com with ESMTPS id br6-20020a17090b0f0600b00262f937bf93si370653pjb.77.2023.11.16.13.35.28 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Thu, 16 Nov 2023 13:35:28 -0800 (PST) Received-SPF: pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 2620:137:e000::3:2 as permitted sender) client-ip=2620:137:e000::3:2; Authentication-Results: mx.google.com; spf=pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 2620:137:e000::3:2 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org; dmarc=fail (p=NONE sp=NONE dis=NONE) header.from=acm.org Received: from out1.vger.email (depot.vger.email [IPv6:2620:137:e000::3:0]) by agentk.vger.email (Postfix) with ESMTP id 7598881B5AB8; Thu, 16 Nov 2023 13:35:26 -0800 (PST) X-Virus-Status: Clean X-Virus-Scanned: clamav-milter 0.103.11 at agentk.vger.email Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1345546AbjKPVes (ORCPT + 99 others); Thu, 16 Nov 2023 16:34:48 -0500 Received: from lindbergh.monkeyblade.net ([23.128.96.19]:52712 "EHLO lindbergh.monkeyblade.net" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S231307AbjKPVer (ORCPT ); Thu, 16 Nov 2023 16:34:47 -0500 Received: from mail-pl1-f172.google.com (mail-pl1-f172.google.com [209.85.214.172]) by lindbergh.monkeyblade.net (Postfix) with ESMTPS id A56C7181; Thu, 16 Nov 2023 13:34:44 -0800 (PST) Received: by mail-pl1-f172.google.com with SMTP id d9443c01a7336-1ccbb7f79cdso11659445ad.3; Thu, 16 Nov 2023 13:34:44 -0800 (PST) X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1700170484; x=1700775284; h=content-transfer-encoding:in-reply-to:from:references:to :content-language:subject:user-agent:mime-version:date:message-id :x-gm-message-state:from:to:cc:subject:date:message-id:reply-to; bh=8Lg5JQN/IO4naSkyvjuyEMADD75Wozkh18eEuNQzW8w=; b=AZo58xP73OunjtUXX561/zSPIHoyIxpf7ZzdXzUCEw1MQaTdHyh5jLGSSlJc2WuarX LULzf4FGIrppj/BWzB8X6FYZOy9V8LVF9nCBDlFHt6ZJX3t4rnpa6hyTVVgpetXmCqjx 9Jwe41RpQ7WeRZnvd2UvXBnHHoUiWDGtqg0Vx96EyHbhtzy+Wt/0BLz1wp6N2cPB5dlC Ya8xdasehfZOLQEREjLuKweRoiGw35q+u6tsxqE0aMyt0lj2e2RENXp+8GbKZ6aJ9bJH QeYLr5qvWGLFf2MB7+AziB0g6YbdnOfdcLy3GACcCKRgHnladB2HKrKK4e81i0rTGzFv 1F6g== X-Gm-Message-State: AOJu0Yw/GVOVeV5feDx7zJUDvgV3YcGbHfQcVhl+dvWM4OuZRFKj05NV 7WqSj3Gz5mBfgrAF8nR+jJ4yrVCkAKM= X-Received: by 2002:a17:902:ab0f:b0:1ca:86db:1d39 with SMTP id ik15-20020a170902ab0f00b001ca86db1d39mr12305110plb.30.1700170483938; Thu, 16 Nov 2023 13:34:43 -0800 (PST) Received: from ?IPV6:2620:0:1000:8411:9b50:bd2b:ae57:7a6d? ([2620:0:1000:8411:9b50:bd2b:ae57:7a6d]) by smtp.gmail.com with ESMTPSA id x11-20020a1709028ecb00b001cc51680695sm111521plo.259.2023.11.16.13.34.41 (version=TLS1_3 cipher=TLS_AES_128_GCM_SHA256 bits=128/128); Thu, 16 Nov 2023 13:34:43 -0800 (PST) Message-ID: <3a6e3034-3e7c-4983-9d15-8112ae737281@acm.org> Date: Thu, 16 Nov 2023 13:34:40 -0800 MIME-Version: 1.0 User-Agent: Mozilla Thunderbird Subject: Re: [PATCH v2] scsi: ufs: core: fix racing issue during ufshcd_mcq_abort Content-Language: en-US To: SEO HOYOUNG , linux-scsi@vger.kernel.org, linux-kernel@vger.kernel.org, alim.akhtar@samsung.com, avri.altman@wdc.com, jejb@linux.ibm.com, martin.petersen@oracle.com, beanhuo@micron.com, kwangwon.min@samsung.com, kwmad.kim@samsung.com, sh425.lee@samsung.com, sc.suh@samsung.com, quic_nguyenb@quicinc.com, cpgs@samsung.com, grant.jung@samsung.com, junwoo80.lee@samsung.com References: <20231114043704.52525-1-hy50.seo@samsung.com> From: Bart Van Assche In-Reply-To: <20231114043704.52525-1-hy50.seo@samsung.com> Content-Type: text/plain; charset=UTF-8; format=flowed Content-Transfer-Encoding: 7bit X-Spam-Status: No, score=-0.8 required=5.0 tests=HEADER_FROM_DIFFERENT_DOMAINS, MAILING_LIST_MULTI,SPF_HELO_NONE,SPF_PASS,T_SCC_BODY_TEXT_LINE autolearn=unavailable autolearn_force=no version=3.4.6 X-Spam-Checker-Version: SpamAssassin 3.4.6 (2021-04-09) on agentk.vger.email Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org X-Greylist: Sender passed SPF test, not delayed by milter-greylist-4.6.4 (agentk.vger.email [0.0.0.0]); Thu, 16 Nov 2023 13:35:26 -0800 (PST) On 11/13/23 20:37, SEO HOYOUNG wrote: > diff --git a/drivers/ufs/core/ufshcd.c b/drivers/ufs/core/ufshcd.c > index 9a730a794b66..55f4c0eeda7b 100644 > --- a/drivers/ufs/core/ufshcd.c > +++ b/drivers/ufs/core/ufshcd.c > @@ -7574,6 +7574,10 @@ int ufshcd_try_to_abort_task(struct ufs_hba *hba, int tag) > goto out; > } > > + if (!ufshcd_cmd_inflight(lrbp->cmd) || > + test_bit(SCMD_STATE_COMPLETE, &lrbp->cmd->state)) > + goto out; > + > err = ufshcd_clear_cmd(hba, tag); > if (err) > dev_err(hba->dev, "%s: Failed clearing cmd at tag %d, err %d\n", I think that the above approach is racy: the state of lrbp->cmd can change after it has been checked and before ufshcd_clear_cmd() is called. Thanks, Bart.