Received: by 2002:a05:7208:70d5:b0:7f:5597:fa5c with SMTP id q21csp863621rba; Thu, 21 Mar 2024 16:58:26 -0700 (PDT) X-Forwarded-Encrypted: i=3; AJvYcCWjICJkw68Hv4WLgeTprAxoIoY9j0wI3JqH/JDWBqtiG5A3kT6s0Uur7LGOuWgx2uNI43z4doW0ETMOAgCr+QVHuy1KYdCyXHGDSECgLg== X-Google-Smtp-Source: AGHT+IF9RfiNpK+AqLuDJLPPFYjyv0JRbVztopg96fXY2i9K4fECzqst0LKcyS6anOnBF9fRdis2 X-Received: by 2002:a50:a6d7:0:b0:565:dfac:a686 with SMTP id f23-20020a50a6d7000000b00565dfaca686mr407658edc.38.1711065506558; Thu, 21 Mar 2024 16:58:26 -0700 (PDT) ARC-Seal: i=2; a=rsa-sha256; t=1711065506; cv=pass; d=google.com; s=arc-20160816; b=zm0AVboUquBDCwgoA9OLrvJS9bfl2F2YHlD5btD9g9iEgYG6FzyRdWGPhl5CvtChJ9 kubp6JnOqbvEI6lkVZEp8kZfjTmARmVFVC6DNx9gFVpy43e6avgFhbMc1GxuT+aVqUms L1pAAESPqOl5jEpS7MnKvcC0QDEg4blXzvZAiYbpDskIGZuTdFMA4en9emd68tQBxijD QlBTHdQqezXehpm8lgR++rBTAgyN5rtrPNpdl154cLRVXkU68BP/P4MO5r+DtwjymOA9 0oWl+Ruw2kgShrspa6/i1E45BqzpUFp4qENim31Hp6MRgXzpqg/L0kytwAKm8pDSKhnQ PBxg== ARC-Message-Signature: i=2; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=content-transfer-encoding:in-reply-to:organization:from:references :cc:to:content-language:subject:user-agent:mime-version :list-unsubscribe:list-subscribe:list-id:precedence:date:message-id :dkim-signature; bh=qk18WWLhD3oeK2YIInuZGZUxi/OQj5V/z4eS9qo7MTk=; fh=alOfo7tn/Xypp+VhZjDGzsffuJFK+V47rzuIdOVbMSE=; b=Bgd56JJjGX889yDRsFYGKslsvOvyctt4v3Angd/uuBU9x1we6BBu618it2VhXeBzZi /+wOxN93Z2Oumm+zYsu/fghynO14MDkRO6TUVk0Y25FhES1oG6Ze5qPjlDkr2cvgBOJj wWDmktuf7z248VOLPJnbpv4JvgkJBFSe1DWfMMvrmT5NtlEJB57hY8kRMCBwOkSVmCCz GWi3aKUD+JOLwqWCkVrhIvDlvJhoCWeMPNYkIeZnHE4phb89Gvw90VPyW2nxsDvvgBbq hM+88QnEosURoWipQcn0u1zYQwe95KWLu4Wq6oBmF8K0RgWHklUcKgekmDuG0Q0cAQ8F Tzdw==; dara=google.com ARC-Authentication-Results: i=2; mx.google.com; dkim=pass header.i=@kernel.org header.s=k20201202 header.b="m/6lmD7X"; arc=pass (i=1 dkim=pass dkdomain=kernel.org); spf=pass (google.com: domain of linux-kernel+bounces-110808-linux.lists.archive=gmail.com@vger.kernel.org designates 2604:1380:4601:e00::3 as permitted sender) smtp.mailfrom="linux-kernel+bounces-110808-linux.lists.archive=gmail.com@vger.kernel.org"; dmarc=pass (p=NONE sp=NONE dis=NONE) header.from=kernel.org Return-Path: Received: from am.mirrors.kernel.org (am.mirrors.kernel.org. [2604:1380:4601:e00::3]) by mx.google.com with ESMTPS id n8-20020a05640205c800b0056bc1504a23si351468edx.258.2024.03.21.16.58.26 for (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Thu, 21 Mar 2024 16:58:26 -0700 (PDT) Received-SPF: pass (google.com: domain of linux-kernel+bounces-110808-linux.lists.archive=gmail.com@vger.kernel.org designates 2604:1380:4601:e00::3 as permitted sender) client-ip=2604:1380:4601:e00::3; Authentication-Results: mx.google.com; dkim=pass header.i=@kernel.org header.s=k20201202 header.b="m/6lmD7X"; arc=pass (i=1 dkim=pass dkdomain=kernel.org); spf=pass (google.com: domain of linux-kernel+bounces-110808-linux.lists.archive=gmail.com@vger.kernel.org designates 2604:1380:4601:e00::3 as permitted sender) smtp.mailfrom="linux-kernel+bounces-110808-linux.lists.archive=gmail.com@vger.kernel.org"; dmarc=pass (p=NONE sp=NONE dis=NONE) header.from=kernel.org Received: from smtp.subspace.kernel.org (wormhole.subspace.kernel.org [52.25.139.140]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by am.mirrors.kernel.org (Postfix) with ESMTPS id 248A21F23054 for ; Thu, 21 Mar 2024 23:58:26 +0000 (UTC) Received: from localhost.localdomain (localhost.localdomain [127.0.0.1]) by smtp.subspace.kernel.org (Postfix) with ESMTP id C7AB13AC2B; Thu, 21 Mar 2024 23:58:18 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=kernel.org header.i=@kernel.org header.b="m/6lmD7X" Received: from smtp.kernel.org (aws-us-west-2-korg-mail-1.web.codeaurora.org [10.30.226.201]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by smtp.subspace.kernel.org (Postfix) with ESMTPS id E470917745; Thu, 21 Mar 2024 23:58:17 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=none smtp.client-ip=10.30.226.201 ARC-Seal:i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1711065498; cv=none; b=TK3MH6c47BM0bBOY4JvTG1QTOFoDzEuOS2o5XYM2YcJGpKoOAgxOb+fI3nCfmuKAguG3naxRrX6Sx5Zbx6LfM8o2qVGb5q3WzN0bSDNELQr0hITptUvBB469SrGYgPImiqa209pErT/8XG4uNPB4YilKSYncpYxkj8oVCvCK+bk= ARC-Message-Signature:i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1711065498; c=relaxed/simple; bh=5byoxZjd92VRK0quOasxrtcb67LjRXgcowLPE2Mx+eQ=; h=Message-ID:Date:MIME-Version:Subject:To:Cc:References:From: In-Reply-To:Content-Type; b=tMs9dP5wJlzLq1fFRdG294SEVxDGBoGZLn2cDTaF/Gi0gOho3nzZHqKP/fN9ZR3JJhdRUkbtxiRY1NG7FXBGxwpFJjsxZUuLZNHUyKbB37zforJJSjiYhfyUA89Ke+WJCqgfSlifJD6qL5kj4MulNTrsI+iUxzLYLtK3SVQRd9g= ARC-Authentication-Results:i=1; smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=kernel.org header.i=@kernel.org header.b=m/6lmD7X; arc=none smtp.client-ip=10.30.226.201 Received: by smtp.kernel.org (Postfix) with ESMTPSA id B198BC43390; Thu, 21 Mar 2024 23:58:16 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=kernel.org; s=k20201202; t=1711065497; bh=5byoxZjd92VRK0quOasxrtcb67LjRXgcowLPE2Mx+eQ=; h=Date:Subject:To:Cc:References:From:In-Reply-To:From; b=m/6lmD7XXIKKrrK810YlPqYsme0bcE+TAoOeiuANEzorxT1afitg2YjE1kUuU3Gd0 L5x6rWrFBBvEsqckWBd9tz6JMMPA1ygVDqsKhVBoaHqhvzc3K4DgTq4uMg4/t2UQIY ns0ztDWPDVpylWIe8xNbGQNzed7zxKc5EGzgDun+lItql2CIsFvpM20hBEPsjB57wV 4ya3FOfaIbPtEhfaopvOAPHJIdPx4V2vyc0RtUczCCiNzGZZ4eC+RLKr/riT6wzRsz UvsHA9Re1OGurkrzqFnvVxYjeSiGO9gsO3Qph9f8/0vnETX3turPUzMv3QsMIMRMu9 WJWUAaNyyn8uA== Message-ID: <565d1ac6-2cdc-4168-a8c6-355912a39d75@kernel.org> Date: Fri, 22 Mar 2024 08:58:15 +0900 Precedence: bulk X-Mailing-List: linux-kernel@vger.kernel.org List-Id: List-Subscribe: List-Unsubscribe: MIME-Version: 1.0 User-Agent: Mozilla Thunderbird Subject: Re: [PATCH] ata: ahci_ceva: return of_property_read_u8_array() error code Content-Language: en-US To: Radhey Shyam Pandey , cassel@kernel.org Cc: linux-ide@vger.kernel.org, linux-kernel@vger.kernel.org, git@amd.com References: <1710960665-1391654-1-git-send-email-radhey.shyam.pandey@amd.com> From: Damien Le Moal Organization: Western Digital Research In-Reply-To: <1710960665-1391654-1-git-send-email-radhey.shyam.pandey@amd.com> Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 7bit On 3/21/24 03:51, Radhey Shyam Pandey wrote: > In the ahci_ceva_probe() error path instead of returning -EINVAL for all > of_property_read_u8_array() failure types return the actual error code. > It removes the redundant -EINVAL assignment at multiple places and > improves the error handling path. > > Reported-by: Markus Elfring > Closes: https://lore.kernel.org/all/9427c0fd-f48a-4104-ac7e-2929be3562af@web.de/ > Signed-off-by: Radhey Shyam Pandey > --- > drivers/ata/ahci_ceva.c | 48 ++++++++++++++++++++--------------------- > 1 file changed, 24 insertions(+), 24 deletions(-) > > diff --git a/drivers/ata/ahci_ceva.c b/drivers/ata/ahci_ceva.c > index 11a2c199a7c2..b54ee80c068f 100644 > --- a/drivers/ata/ahci_ceva.c > +++ b/drivers/ata/ahci_ceva.c > @@ -274,62 +274,62 @@ static int ceva_ahci_probe(struct platform_device *pdev) > cevapriv->flags = CEVA_FLAG_BROKEN_GEN2; > > /* Read OOB timing value for COMINIT from device-tree */ > - if (of_property_read_u8_array(np, "ceva,p0-cominit-params", > - (u8 *)&cevapriv->pp2c[0], 4) < 0) { > + rc = of_property_read_u8_array(np, "ceva,p0-cominit-params", > + (u8 *)&cevapriv->pp2c[0], 4); > + if (rc < 0) { > dev_warn(dev, "ceva,p0-cominit-params property not defined\n"); > - rc = -EINVAL; > goto disable_resources; > } > > - if (of_property_read_u8_array(np, "ceva,p1-cominit-params", > - (u8 *)&cevapriv->pp2c[1], 4) < 0) { > + rc = of_property_read_u8_array(np, "ceva,p1-cominit-params", > + (u8 *)&cevapriv->pp2c[1], 4); > + if (rc < 0) { This can be more simply "if (rc)" > dev_warn(dev, "ceva,p1-cominit-params property not defined\n"); > - rc = -EINVAL; Here, it may be better to do: rc = dev_err_probe(dev, rc, "..."); and remove the dev_warn, as that really should be a dev_err() anyway. Same pattern for all the other property reads below. > goto disable_resources; > } > > /* Read OOB timing value for COMWAKE from device-tree*/ > - if (of_property_read_u8_array(np, "ceva,p0-comwake-params", > - (u8 *)&cevapriv->pp3c[0], 4) < 0) { > + rc = of_property_read_u8_array(np, "ceva,p0-comwake-params", > + (u8 *)&cevapriv->pp3c[0], 4); > + if (rc < 0) { > dev_warn(dev, "ceva,p0-comwake-params property not defined\n"); > - rc = -EINVAL; > goto disable_resources; > } > > - if (of_property_read_u8_array(np, "ceva,p1-comwake-params", > - (u8 *)&cevapriv->pp3c[1], 4) < 0) { > + rc = of_property_read_u8_array(np, "ceva,p1-comwake-params", > + (u8 *)&cevapriv->pp3c[1], 4); > + if (rc < 0) { > dev_warn(dev, "ceva,p1-comwake-params property not defined\n"); > - rc = -EINVAL; > goto disable_resources; > } > > /* Read phy BURST timing value from device-tree */ > - if (of_property_read_u8_array(np, "ceva,p0-burst-params", > - (u8 *)&cevapriv->pp4c[0], 4) < 0) { > + rc = of_property_read_u8_array(np, "ceva,p0-burst-params", > + (u8 *)&cevapriv->pp4c[0], 4); > + if (rc < 0) { > dev_warn(dev, "ceva,p0-burst-params property not defined\n"); > - rc = -EINVAL; > goto disable_resources; > } > > - if (of_property_read_u8_array(np, "ceva,p1-burst-params", > - (u8 *)&cevapriv->pp4c[1], 4) < 0) { > + rc = of_property_read_u8_array(np, "ceva,p1-burst-params", > + (u8 *)&cevapriv->pp4c[1], 4); > + if (rc < 0) { > dev_warn(dev, "ceva,p1-burst-params property not defined\n"); > - rc = -EINVAL; > goto disable_resources; > } > > /* Read phy RETRY interval timing value from device-tree */ > - if (of_property_read_u16_array(np, "ceva,p0-retry-params", > - (u16 *)&cevapriv->pp5c[0], 2) < 0) { > + rc = of_property_read_u16_array(np, "ceva,p0-retry-params", > + (u16 *)&cevapriv->pp5c[0], 2); > + if (rc < 0) { > dev_warn(dev, "ceva,p0-retry-params property not defined\n"); > - rc = -EINVAL; > goto disable_resources; > } > > - if (of_property_read_u16_array(np, "ceva,p1-retry-params", > - (u16 *)&cevapriv->pp5c[1], 2) < 0) { > + rc = of_property_read_u16_array(np, "ceva,p1-retry-params", > + (u16 *)&cevapriv->pp5c[1], 2); > + if (rc < 0) { > dev_warn(dev, "ceva,p1-retry-params property not defined\n"); > - rc = -EINVAL; > goto disable_resources; > } > -- Damien Le Moal Western Digital Research