Received: by 2002:a25:6193:0:0:0:0:0 with SMTP id v141csp4357680ybb; Mon, 23 Mar 2020 19:31:21 -0700 (PDT) X-Google-Smtp-Source: ADFU+vvkheNU0zAz1hFJPurqjLhDxPAYUUKcXFHrtB53gFbnRxgvIYjeyecbnqut1mljkv+BMWrJ X-Received: by 2002:aca:d44d:: with SMTP id l74mr1853946oig.83.1585017080834; Mon, 23 Mar 2020 19:31:20 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; t=1585017080; cv=none; d=google.com; s=arc-20160816; b=lbqL7bDGN/TSQpLPNrjFkF5DATHGB2C/s5SqFzCprvx8xObFeearTje0A/RiwWwhpW vhGdhYaH+fJlGgCN4b8LltI6Nwt3hhigQkfEGrn+IMbSoYB44EU6N1veR5GIo7mwPgTr vfSmDBlL5hOUlxSIhgmoaU0UOJVCHkVPKw/XGpN3OvrWveDiw2BtRDbMBWIan3MLDWHf KKjtWyNpsstkzRcAjA1L1LGvP1fuXGjYP9WIRs/sd7r6bsOTsALVrXSr6ly8bDvv3rZ7 RT/3hl1FbaTtuW2E/kjYF2qM8TAFjHUkrNR5vQ17BxYJBWFSRZq3JUAQ6KBaFJDLHKIT 5sNw== 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=E654FjdUEQHUs8slsoY39LXgqQlQcst7HtR/NPfu2ZU=; b=z4H0EpGIdijnS2IQ2kNHc6zL4K64cj3350tU7v2BIywK13B9zkPl0w5WcGseLj1i5t Hcjv8ALf8lE35UfhRcMxHi+HJ+RoI1q7tsl+CcPhDW+5Y4AP2fj7dTG6YYl+kM7kvhKZ RAfebXC3T9i54aZR4r57nNitUDB5PIzpTNyLzS/UDYL5wtdv1XoZVvww+RgHpOi1DtUH wWXUCQObu8BN1Oyeg3ri0fA3lmTkC1OTqLQeP/HLKMoHHw+W2d0wYtH+snGeoOju/QEh TQ9PvRhHV7eSLR4Q+XQDJhLE+UkGu5awf4RMn2D+XN47HETM2oZzSZ/FAI+vHLYQ0w2U 0ZyA== ARC-Authentication-Results: i=1; mx.google.com; dkim=pass header.i=@verdurent-com.20150623.gappssmtp.com header.s=20150623 header.b=PyFnFDvH; spf=pass (google.com: best guess record for domain of linux-kernel-owner@vger.kernel.org designates 209.132.180.67 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org Return-Path: Received: from vger.kernel.org (vger.kernel.org. [209.132.180.67]) by mx.google.com with ESMTP id f6si8797496otq.50.2020.03.23.19.31.07; Mon, 23 Mar 2020 19:31:20 -0700 (PDT) Received-SPF: pass (google.com: best guess record for domain of linux-kernel-owner@vger.kernel.org designates 209.132.180.67 as permitted sender) client-ip=209.132.180.67; Authentication-Results: mx.google.com; dkim=pass header.i=@verdurent-com.20150623.gappssmtp.com header.s=20150623 header.b=PyFnFDvH; spf=pass (google.com: best guess record for domain of linux-kernel-owner@vger.kernel.org designates 209.132.180.67 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1727110AbgCXCaJ (ORCPT + 99 others); Mon, 23 Mar 2020 22:30:09 -0400 Received: from mail-vk1-f195.google.com ([209.85.221.195]:38086 "EHLO mail-vk1-f195.google.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1726824AbgCXCaJ (ORCPT ); Mon, 23 Mar 2020 22:30:09 -0400 Received: by mail-vk1-f195.google.com with SMTP id n128so4423263vke.5 for ; Mon, 23 Mar 2020 19:30:08 -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=E654FjdUEQHUs8slsoY39LXgqQlQcst7HtR/NPfu2ZU=; b=PyFnFDvHAMFtZOHiL4JFSEvTOpBWyVQ8WX+T2B9tTPB+q275MbxkOqKZ1+ISeFb6gm jaPo5MDrjePiqUG7HWMGP09fCnGlt0kCqsLJhlkJmER/XMa8VnA0R6gso4cAOjV2jLGz VYvcp5LP370pkMyIxuP1Mv0Q+YZEdohyHkUywWz8WjASqHjz0/mJqw/AN3ZwBe7h3/iw WFMiQ+fo5taKM6gEd0Wji7LTUqKGVjCMhp2afWe9qHBhtdfipHQ5zzl7+vqh151bIXi3 ylbM+X9UsC7TJ+3N6DunPFxwvzmUjf21SJPrLEuJZuWoYmMFdWgX8tiwFCVEdZgkAyBu RwAg== 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=E654FjdUEQHUs8slsoY39LXgqQlQcst7HtR/NPfu2ZU=; b=TWWIPL0jFcT14J+ENGcBKE9OrV3M5XTIfmZepxL/GnIienhboOY7dPWR1KJGr9/SiO QcwhKDY5DQ1wGc9dmUpUkM5Ani+vpv1m/bzCA0qIx5EWeqBHL3swfhDJ/O40TpkD7Gq9 oeodg+N0UefUHsyZS8U/73K9dFUouzV3FQp1/mm/LduIxEsdpJJ+4L+fCUJYyfdznTpN 9BTAanzv4Wf8JaGojZSuG9uQNWMF5sFFCM7XIFDCnIxVDy69cEcCD0H/x15FaTsMpKZ5 jLM9ZdjaJaJ7n2LgvTLocD3Dt/qs6c017MYOeLJ7EwlixaUAagIjQktfvtJUjjX+Ka+T VICw== X-Gm-Message-State: ANhLgQ2s5qCyGwh886nvk7rm7DfzMvnhxAS59HLPPA4UHtrt6zixEbjH H5036FyRpSYzQf/PV7DhCcwD1P5eapupe52gqDHrgQ== X-Received: by 2002:a1f:ee05:: with SMTP id m5mr17038079vkh.9.1585017006589; Mon, 23 Mar 2020 19:30:06 -0700 (PDT) MIME-Version: 1.0 References: <20200321193107.21590-1-daniel.lezcano@linaro.org> In-Reply-To: <20200321193107.21590-1-daniel.lezcano@linaro.org> From: Amit Kucheria Date: Tue, 24 Mar 2020 08:00:00 +0530 Message-ID: Subject: Re: [PATCH] thermal/drivers/cpufreq_cooling: Remove abusing WARN_ON To: Daniel Lezcano Cc: Amit Daniel Kachhap , Viresh Kumar , Javi Merino , Zhang Rui , "open list:THERMAL/CPU_COOLING" , open list 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 Sun, Mar 22, 2020 at 1:01 AM Daniel Lezcano wrote: > > The WARN_ON macros are used at the entry functions state2power() and > set_cur_state(). > > state2power() is called with the max_state retrieved from > get_max_state which returns cpufreq_cdev->max_level, then it check if > max_state is > cpufreq_cdev->max_level. The test does not really makes > sense but let's assume we want to make sure to catch an error if the > code evolves. However the WARN_ON is overkill. > > set_cur_state() is also called from userspace if we write to the > sysfs. It is easy to see a stack dumped by just writing to sysfs > /sys/class/thermal/cooling_device0/cur_state a value greater than > "max_level". A bit scary. Returing -EINVAL is enough. > > Remove these WARN_ON. > > Signed-off-by: Daniel Lezcano Reviewed-by: Amit Kucheria > --- > drivers/thermal/cpufreq_cooling.c | 4 ++-- > 1 file changed, 2 insertions(+), 2 deletions(-) > > diff --git a/drivers/thermal/cpufreq_cooling.c b/drivers/thermal/cpufreq_cooling.c > index af55ac08e1bd..d66791a71320 100644 > --- a/drivers/thermal/cpufreq_cooling.c > +++ b/drivers/thermal/cpufreq_cooling.c > @@ -273,7 +273,7 @@ static int cpufreq_state2power(struct thermal_cooling_device *cdev, > struct cpufreq_cooling_device *cpufreq_cdev = cdev->devdata; > > /* Request state should be less than max_level */ > - if (WARN_ON(state > cpufreq_cdev->max_level)) > + if (state > cpufreq_cdev->max_level) > return -EINVAL; > > num_cpus = cpumask_weight(cpufreq_cdev->policy->cpus); > @@ -434,7 +434,7 @@ static int cpufreq_set_cur_state(struct thermal_cooling_device *cdev, > int ret; > > /* Request state should be less than max_level */ > - if (WARN_ON(state > cpufreq_cdev->max_level)) > + if (state > cpufreq_cdev->max_level) > return -EINVAL; > > /* Check if the old cooling action is same as new cooling action */ > -- > 2.17.1 >