Received: by 2002:a25:8b91:0:0:0:0:0 with SMTP id j17csp449617ybl; Wed, 29 Jan 2020 03:35:20 -0800 (PST) X-Google-Smtp-Source: APXvYqzlwCDBZYFh0wiUQcdRLZsVm/I/MhamZq5x8VqDuU9kDU6F8u4He37escZi3PtrLmhxmQYk X-Received: by 2002:aca:5f85:: with SMTP id t127mr6173036oib.1.1580297719902; Wed, 29 Jan 2020 03:35:19 -0800 (PST) ARC-Seal: i=1; a=rsa-sha256; t=1580297719; cv=none; d=google.com; s=arc-20160816; b=ZnokIv3goHCUnYOafbwXdMzltu3PpmPAKF1nSiXSVMw0xYdqJOQKfEC9h/BdNuNLZe W+i1uuIj1/lZHcUJo7QIECkHPnegXCEJ/DJghwKiv/kpnvEAbr2bjcHpLA7mbk9Pjfgm yGbrnHCkX8biK6g2D+H5pTdy3n5P31ryFmzkEPbJ5HKgnJOTjRiV7iWXka+J+HC/E0tC 3fIJ8VxlBj9vBu+Z4mhGlhV4Wn76viMQpASvuIgl4BoI98KRxqnUYO5LKDQ0WNQIXI8O 6OSrBKUXW2n02BDz8pyJG+gbiKT3L98/ITGy3n4mPhrBo2UtarnualbtEDRPOMUn/Znf 4UCw== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=list-id:precedence:sender:content-transfer-encoding :robot-unsubscribe:robot-id:message-id:mime-version:references :in-reply-to:cc:subject:to:reply-to:from:date; bh=NmtYyXVFdNohHwPvRGdP1o/s2IvMPkZiP80Pxv/QAzo=; b=R2Yp/bWW2VbJuutTsUqXr32UhguJr7OO9KZPYoTc2ab/UwqbjERuzvA5SADeYAIttf wC6BMNflP4ZlIkHbaM49k+1QTqmEK5uZwtiIv1yAW73NkvaU+Vbi+5zfN0DIM+kV2+pW WEsoEhH3YlMZjifI40dc4rUoSysSYk9GFW02/fB1v4ZoJTSl+Q6PJ0Jl4RZFjM4iiMyd nYISbJGChQ89LnVNIGvai6D00aCKjLnInR7P9tMuFKmbeU1iRGrLLNZ9B7cDk6kbmtCP Pi2/rqXB7N23d/i2Cad1tAuBiaZ6t7Tn0NkHSOufWUjtsOfTcz/ZT4vf0rCaS32N7zZr z9vA== ARC-Authentication-Results: i=1; mx.google.com; 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 r1si977009otn.150.2020.01.29.03.35.07; Wed, 29 Jan 2020 03:35:19 -0800 (PST) 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; 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 S1726756AbgA2LdL (ORCPT + 99 others); Wed, 29 Jan 2020 06:33:11 -0500 Received: from Galois.linutronix.de ([193.142.43.55]:51097 "EHLO Galois.linutronix.de" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1726716AbgA2LdK (ORCPT ); Wed, 29 Jan 2020 06:33:10 -0500 Received: from [5.158.153.53] (helo=tip-bot2.lab.linutronix.de) by Galois.linutronix.de with esmtpsa (TLS1.2:DHE_RSA_AES_256_CBC_SHA256:256) (Exim 4.80) (envelope-from ) id 1iwlaf-0007nW-Dw; Wed, 29 Jan 2020 12:33:01 +0100 Received: from [127.0.1.1] (localhost [IPv6:::1]) by tip-bot2.lab.linutronix.de (Postfix) with ESMTP id BDBB51C1C1A; Wed, 29 Jan 2020 12:32:59 +0100 (CET) Date: Wed, 29 Jan 2020 11:32:59 -0000 From: "tip-bot2 for Qais Yousef" Reply-to: linux-kernel@vger.kernel.org To: linux-tip-commits@vger.kernel.org Subject: [tip: sched/core] sched/uclamp: Reject negative values in cpu_uclamp_write() Cc: Qais Yousef , "Peter Zijlstra (Intel)" , Ingo Molnar , x86 , LKML In-Reply-To: <20200114210947.14083-1-qais.yousef@arm.com> References: <20200114210947.14083-1-qais.yousef@arm.com> MIME-Version: 1.0 Message-ID: <158029757939.396.4291536552223438529.tip-bot2@tip-bot2> X-Mailer: tip-git-log-daemon Robot-ID: Robot-Unsubscribe: Contact to get blacklisted from these emails Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: 7bit X-Linutronix-Spam-Score: 1.5 X-Linutronix-Spam-Level: + X-Linutronix-Spam-Status: No , 1.5 points, 5.0 required, ALL_TRUSTED=-1,SHORTCIRCUIT=-0.0001,URIBL_DBL_ABUSE_MALW=2.5 Sender: linux-kernel-owner@vger.kernel.org Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org The following commit has been merged into the sched/core branch of tip: Commit-ID: b562d140649966d4daedd0483a8fe59ad3bb465a Gitweb: https://git.kernel.org/tip/b562d140649966d4daedd0483a8fe59ad3bb465a Author: Qais Yousef AuthorDate: Tue, 14 Jan 2020 21:09:47 Committer: Ingo Molnar CommitterDate: Tue, 28 Jan 2020 21:36:56 +01:00 sched/uclamp: Reject negative values in cpu_uclamp_write() The check to ensure that the new written value into cpu.uclamp.{min,max} is within range, [0:100], wasn't working because of the signed comparison 7301 if (req.percent > UCLAMP_PERCENT_SCALE) { 7302 req.ret = -ERANGE; 7303 return req; 7304 } # echo -1 > cpu.uclamp.min # cat cpu.uclamp.min 42949671.96 Cast req.percent into u64 to force the comparison to be unsigned and work as intended in capacity_from_percent(). # echo -1 > cpu.uclamp.min sh: write error: Numerical result out of range Fixes: 2480c093130f ("sched/uclamp: Extend CPU's cgroup controller") Signed-off-by: Qais Yousef Signed-off-by: Peter Zijlstra (Intel) Signed-off-by: Ingo Molnar Link: https://lkml.kernel.org/r/20200114210947.14083-1-qais.yousef@arm.com --- kernel/sched/core.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/kernel/sched/core.c b/kernel/sched/core.c index 4ff03c2..55b9a9c 100644 --- a/kernel/sched/core.c +++ b/kernel/sched/core.c @@ -7264,7 +7264,7 @@ capacity_from_percent(char *buf) &req.percent); if (req.ret) return req; - if (req.percent > UCLAMP_PERCENT_SCALE) { + if ((u64)req.percent > UCLAMP_PERCENT_SCALE) { req.ret = -ERANGE; return req; }