Received: by 2002:a25:1985:0:0:0:0:0 with SMTP id 127csp4558009ybz; Tue, 28 Apr 2020 13:36:36 -0700 (PDT) X-Google-Smtp-Source: APiQypKU28wuqqL6ez9KDVWhbUcp+BJApqKpUj7KQjuj4DkBSuVt9lYGh6D8FIhlT7ePQAAJg4l5 X-Received: by 2002:a50:da4a:: with SMTP id a10mr24607873edk.158.1588106196515; Tue, 28 Apr 2020 13:36:36 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; t=1588106196; cv=none; d=google.com; s=arc-20160816; b=e3H4BvsISiFNbjVlYMEUQ7S6CneSnGO4GuJz/N/Kz+D1BCActDhs6Jn6nhHKHuEqp2 Ied2MiuPPsmbZFdIXWHk6acLEgK/M9VUU9ooFejAgw2aJjMAoTv7ckhetdftFhISCdiC 4y6qy5qLIIkN1yIyG+ipwMlQzjlIk/SY+zWev7wx0u/cvm8YUYVYl5oN58BitO7ZpBhw jzg4I/feBZOP214kOtRtTXGNMHmxLdillxRVAHHtHU5uGYX4HrjBOuA2cKzUUvyClWjL PH6Hh6Vs+yWQPc6JDIh9A/lFYZXf06U3Pgu0eNPEzKZhGF8ullt4InbX50S1EzhWkP2y RvSQ== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=list-id:precedence:sender:cc:to:subject:message-id:date:from :in-reply-to:references:mime-version:dkim-signature; bh=z97Q8zIF1xZ1WiB5BLHXUrpSO7gV7Uk5iXCchLoct18=; b=dLFz2NNUnBISWUKWsrD0nnRKB88wOiFBtr+AUQkv4cwx+72fTDpPuV+uqTiv5O5XkX vtdiKZ6WJ9U20oiZGQ3O6jtJ3VvZ1vBupJXd7PfGzxtoeg8819CyCJbz4O25c7uHQKEm 93yPxCfxzcIIlm58/1FFVL1TpT3RealWdwuX42DKX56iPXGr43WyoKE17TGceu5weJ81 w53Ny8jVRASHeGImTx/S6dTpOB+d+qtC2NjdNMonbEB1XcWU1ZOZwvidqta7zuV2ZruY FhO5xwoOSGVT2rhboH0PTvzR3AsA2f9qaCj5rHF+hkTdTGYIzET6qiqpoBEoH01SzJaj BMsA== ARC-Authentication-Results: i=1; mx.google.com; dkim=pass header.i=@verdurent-com.20150623.gappssmtp.com header.s=20150623 header.b=g7o6v59i; 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 dk9si2161944edb.403.2020.04.28.13.36.11; Tue, 28 Apr 2020 13:36:36 -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; dkim=pass header.i=@verdurent-com.20150623.gappssmtp.com header.s=20150623 header.b=g7o6v59i; 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 S1726344AbgD1UeK (ORCPT + 99 others); Tue, 28 Apr 2020 16:34:10 -0400 Received: from lindbergh.monkeyblade.net ([23.128.96.19]:34778 "EHLO lindbergh.monkeyblade.net" rhost-flags-OK-FAIL-OK-FAIL) by vger.kernel.org with ESMTP id S1726286AbgD1UeK (ORCPT ); Tue, 28 Apr 2020 16:34:10 -0400 Received: from mail-ua1-x942.google.com (mail-ua1-x942.google.com [IPv6:2607:f8b0:4864:20::942]) by lindbergh.monkeyblade.net (Postfix) with ESMTPS id 0D37DC03C1AC for ; Tue, 28 Apr 2020 13:34:10 -0700 (PDT) Received: by mail-ua1-x942.google.com with SMTP id t8so22873231uap.3 for ; Tue, 28 Apr 2020 13:34:09 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=verdurent-com.20150623.gappssmtp.com; s=20150623; h=mime-version:references:in-reply-to:from:date:message-id:subject:to :cc; bh=z97Q8zIF1xZ1WiB5BLHXUrpSO7gV7Uk5iXCchLoct18=; b=g7o6v59iRNgpmNU22S7QAHVZZ5eMbcXUaro17i5cvT7gtb4rYzeT5iF82Z8QbSyLos 3oyXlsKo3ccwL58lV4OcDoj5R2Qn/eYUWn62IGSYp5gV3DSeSCJGMksU4PPxXsclN2ui cMs1F8RG0iuGsY27CHKe0pK4E5FR+YPotvQ9G+LHh4pczxrc2Gx32+ufbE+9ZLYobY9F 8bK3rpag9kjCRt4x6AbU1oaoQiyG9svN3c/8pGjp5mRAdBUfTeFHVYSfWap8vG6SWE8j A8wHuddtQs6fvQyFQTm0sMt8ovIPXHXjC6ORldqbOU9C8r9F/dRR+sU23tqz6vk9FmKF jXiw== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:mime-version:references:in-reply-to:from:date :message-id:subject:to:cc; bh=z97Q8zIF1xZ1WiB5BLHXUrpSO7gV7Uk5iXCchLoct18=; b=ntU9yiDlUiHfHmZUw1qcHxHoUGfYueFoPpTEhtm+yENG+vP9yzzQVN91wqX20QwE3M 4Meva/+kimE7+erhk/9uL/GOsznwsyKJfK+nPY+BFFWOL/DILLGyX931ooS+7/ozqqE4 QOCnvuCbFTEQaxu3QVou/COHhH1QIKjT0pgP93hMcVzX0E0psrYftgyZZwSSdiA3I92W TYlCpjzbCLKA06dEOPYPXG8TCa6fxeRuWe/ExzL9kZfthVl26NMoQu1bt7c2rl6fkVbH qf/vXRYrCSuyGb9XmO033egokoxeWpj6JdRRGufbCzhJlz+6SvXf7zqPmO1Ef9denb7F Uapg== X-Gm-Message-State: AGi0PuaUoj+HJjKybMw9DJX8krY3OvYXshwpMn4aaE0Xf/vNtxIwtc5c rptK1pANQY3S5QKlwpX4bt8wrc+qiwKsdf1lCJO9HA== X-Received: by 2002:a67:e9d9:: with SMTP id q25mr22060001vso.27.1588106049108; Tue, 28 Apr 2020 13:34:09 -0700 (PDT) MIME-Version: 1.0 References: <20200424161944.6044-1-sudipm.mukherjee@gmail.com> In-Reply-To: <20200424161944.6044-1-sudipm.mukherjee@gmail.com> From: Amit Kucheria Date: Wed, 29 Apr 2020 02:03:33 +0530 Message-ID: Subject: Re: [PATCH v2] thermal: ti-soc-thermal: avoid dereferencing ERR_PTR To: Sudip Mukherjee Cc: Eduardo Valentin , Keerthy , Zhang Rui , Daniel Lezcano , LKML , Linux PM list , linux-omap@vger.kernel.org Content-Type: text/plain; charset="UTF-8" Sender: linux-kernel-owner@vger.kernel.org Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org On Fri, Apr 24, 2020 at 9:49 PM Sudip Mukherjee wrote: > > On error the function ti_bandgap_get_sensor_data() returns the error > code in ERR_PTR() but we only checked if the return value is NULL or > not. And, so we can dereference an error code inside ERR_PTR. > While at it, convert a check to IS_ERR_OR_NULL. > > Signed-off-by: Sudip Mukherjee Reviewed-by: Amit Kucheria > --- > drivers/thermal/ti-soc-thermal/ti-thermal-common.c | 6 +++--- > 1 file changed, 3 insertions(+), 3 deletions(-) > > diff --git a/drivers/thermal/ti-soc-thermal/ti-thermal-common.c b/drivers/thermal/ti-soc-thermal/ti-thermal-common.c > index d3e959d01606..85776db4bf34 100644 > --- a/drivers/thermal/ti-soc-thermal/ti-thermal-common.c > +++ b/drivers/thermal/ti-soc-thermal/ti-thermal-common.c > @@ -169,7 +169,7 @@ int ti_thermal_expose_sensor(struct ti_bandgap *bgp, int id, > > data = ti_bandgap_get_sensor_data(bgp, id); > > - if (!data || IS_ERR(data)) > + if (!IS_ERR_OR_NULL(data)) > data = ti_thermal_build_data(bgp, id); > > if (!data) > @@ -196,7 +196,7 @@ int ti_thermal_remove_sensor(struct ti_bandgap *bgp, int id) > > data = ti_bandgap_get_sensor_data(bgp, id); > > - if (data && data->ti_thermal) { > + if (!IS_ERR_OR_NULL(data) && data->ti_thermal) { > if (data->our_zone) > thermal_zone_device_unregister(data->ti_thermal); > } > @@ -262,7 +262,7 @@ int ti_thermal_unregister_cpu_cooling(struct ti_bandgap *bgp, int id) > > data = ti_bandgap_get_sensor_data(bgp, id); > > - if (data) { > + if (!IS_ERR_OR_NULL(data)) { > cpufreq_cooling_unregister(data->cool_dev); > if (data->policy) > cpufreq_cpu_put(data->policy); > -- > 2.11.0 >