Received: by 2002:a05:6a10:206:0:0:0:0 with SMTP id 6csp5785pxj; Wed, 23 Jun 2021 14:11:05 -0700 (PDT) X-Google-Smtp-Source: ABdhPJxtPfcIIUqNM49YXcvcL5W5rNrTtmYawdONL1nUAkgGWWgxDIAMlcq8i7C4+2YbRmxwKu2Y X-Received: by 2002:a5d:8752:: with SMTP id k18mr1214696iol.139.1624482665732; Wed, 23 Jun 2021 14:11:05 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; t=1624482665; cv=none; d=google.com; s=arc-20160816; b=IYEd8BVT0CcqeKwBP5WIQMfmWOXWsW+RAX9rqpYSxrtq4K4lCUoRe1tbq7cXuSRfRq 43uRd12gr7tPPDaOXaqgRsayL7hiTi1hnQNLNXsSLR9pD38NJhfGSqLSBwCWhH7iTtm8 ig6bNYYL9p1NUu1BB/7eD0ImxAhdzOeCeIWVJOQAxyAsdV16ZwENbcfrVH6ad/hLU55/ 0xMa6lgi0rHWVd3jG15WVo+adeKoxgtbq1DywXrQmkVn8NJNJ0qhLRUt81a2m0ckes2B 6j9BAQdHTSHSKySkl1xa93eGj62xTggtSTzMY1fHSG18vaZUV7rru2RpChnj9mOvZ3HT AbcA== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=list-id:precedence:content-transfer-encoding:content-language :in-reply-to:mime-version:user-agent:date:message-id:from:references :cc:to:subject; bh=gZwBdBLs++V9xhBPmC4GV0Qda84sztnFz2ba/5gwfkE=; b=zFEJSFQL1dC5l9txM36m74KARAy9/GORVfHt4HD1MQqk6HCPpt1MmoQ3AaMQ2WinyE LQ0yh2VwuZDYL9bQjix7I1HUL10qrQmLw/JIplNvThK9sUIS5DiOW0UWW2CdyBrNai6O VjXcKYcdqdTJLAGn9TOGWAEbSJ82M6XaSCRKVYF2rqslv2/GbnxCDehXjAPC17Y/HCuj 6mtYkAtSxzkrWECaQEbzxThkFpmPFcnU8mm9b3z1N2OfLu1yI5TkzP6jFvFSE1WawXZ+ hGOigYGfMviK4uc5SQXmlHPJEJ9nX6safknEiMJ6lwnoueSMEd4wd/eZ78+7pbLgJhKb G0Vw== ARC-Authentication-Results: i=1; mx.google.com; spf=pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 23.128.96.18 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org Return-Path: Received: from vger.kernel.org (vger.kernel.org. [23.128.96.18]) by mx.google.com with ESMTP id e1si617366ilq.159.2021.06.23.14.10.51; Wed, 23 Jun 2021 14:11:05 -0700 (PDT) Received-SPF: pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 23.128.96.18 as permitted sender) client-ip=23.128.96.18; Authentication-Results: mx.google.com; spf=pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 23.128.96.18 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S229907AbhFWVKo (ORCPT + 99 others); Wed, 23 Jun 2021 17:10:44 -0400 Received: from mail-pl1-f175.google.com ([209.85.214.175]:33782 "EHLO mail-pl1-f175.google.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S229660AbhFWVKn (ORCPT ); Wed, 23 Jun 2021 17:10:43 -0400 Received: by mail-pl1-f175.google.com with SMTP id f10so1840813plg.0; Wed, 23 Jun 2021 14:08:25 -0700 (PDT) X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:subject:to:cc:references:from:message-id:date :user-agent:mime-version:in-reply-to:content-language :content-transfer-encoding; bh=gZwBdBLs++V9xhBPmC4GV0Qda84sztnFz2ba/5gwfkE=; b=VRL0AKyi0vRSWjaoDx9AV+a8tEwG4NX2PMZLeXLmUFSmA+PkXYVeJwMKsOpvZpmjG7 IWQBdW0l4QkSEMYQ+8Yh2yStKh3y/ptfI5Gcg8ZSSY2EUtXrkV8iVLlOoVHFjvIipyq+ DsRtMTMBDD0dBEt022Rahe2g6ctov98IxcVmopbziaqLuoKwED0NHpig30JVpEymfN/l xXefRy2UtWbm2/hZnPrf3YJVmnwyIbM/OJ4R8k+TqoJCNMYoQXC8X6Lp1KJq310GBCid VV+fJvzLKEKDaH+R/bUxWBuAfzrLhjMRYKLsx4sdXLSej9BHwfPoM4HYHBomz4ltc4QV 9cfA== X-Gm-Message-State: AOAM5333I+K8ObqVETivm4Ep3rAEtmuivgBmrhK5Ig/PBUNa7zqjmYoa VokuQCX/3NgVPc+khJQNS9yWqezxytI= X-Received: by 2002:a17:90b:2306:: with SMTP id mt6mr11846433pjb.71.1624482504794; Wed, 23 Jun 2021 14:08:24 -0700 (PDT) Received: from [192.168.3.217] (c-73-241-217-19.hsd1.ca.comcast.net. [73.241.217.19]) by smtp.gmail.com with ESMTPSA id k35sm41869pgi.21.2021.06.23.14.08.22 (version=TLS1_3 cipher=TLS_AES_128_GCM_SHA256 bits=128/128); Wed, 23 Jun 2021 14:08:23 -0700 (PDT) Subject: Re: [PATCH v4 03/10] scsi: ufs: Update the return value of supplier pm ops To: Can Guo , asutoshd@codeaurora.org, nguyenb@codeaurora.org, hongwus@codeaurora.org, ziqichen@codeaurora.org, linux-scsi@vger.kernel.org, kernel-team@android.com Cc: Alim Akhtar , Avri Altman , "James E.J. Bottomley" , "Martin K. Petersen" , Stanley Chu , Bean Huo , Jaegeuk Kim , open list References: <1624433711-9339-1-git-send-email-cang@codeaurora.org> <1624433711-9339-4-git-send-email-cang@codeaurora.org> From: Bart Van Assche Message-ID: <59b0c04a-298a-4eae-7938-8170835c00b7@acm.org> Date: Wed, 23 Jun 2021 14:08:22 -0700 User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:78.0) Gecko/20100101 Thunderbird/78.11.0 MIME-Version: 1.0 In-Reply-To: <1624433711-9339-4-git-send-email-cang@codeaurora.org> Content-Type: text/plain; charset=utf-8 Content-Language: en-US Content-Transfer-Encoding: 7bit Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org On 6/23/21 12:35 AM, Can Guo wrote: > rpm_get_suppliers() is returning an error only if the error is negative. > However, ufshcd_wl_resume() may return a positive error code, e.g., when > hibern8 or SSU cmd fails. Make the positive return value a negative error > code so that consumers are aware of any resume failure from their supplier. > Make the same change to ufshcd_wl_suspend() just to keep symmetry. > > Signed-off-by: Can Guo > --- > drivers/scsi/ufs/ufshcd.c | 4 ++-- > 1 file changed, 2 insertions(+), 2 deletions(-) > > diff --git a/drivers/scsi/ufs/ufshcd.c b/drivers/scsi/ufs/ufshcd.c > index abe5f2d..ee70522 100644 > --- a/drivers/scsi/ufs/ufshcd.c > +++ b/drivers/scsi/ufs/ufshcd.c > @@ -8922,7 +8922,7 @@ static int __ufshcd_wl_suspend(struct ufs_hba *hba, enum ufs_pm_op pm_op) > ufshcd_release(hba); > } > hba->wlu_pm_op_in_progress = false; > - return ret; > + return ret <= 0 ? ret : -EINVAL; > } > > static int __ufshcd_wl_resume(struct ufs_hba *hba, enum ufs_pm_op pm_op) > @@ -9009,7 +9009,7 @@ static int __ufshcd_wl_resume(struct ufs_hba *hba, enum ufs_pm_op pm_op) > hba->clk_gating.is_suspended = false; > ufshcd_release(hba); > hba->wlu_pm_op_in_progress = false; > - return ret; > + return ret <= 0 ? ret : -EINVAL; > } I think the above patch shows that indicating failure by either returning a positive or a negative value is a booby trap. Please modify ufshcd_send_request_sense() and ufshcd_set_dev_pwr_mode() such that these return a value that is either zero or negative. Are there any other functions than that need to be modified? Thanks, Bart.