Return-Path: Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1752332AbdF3NP2 (ORCPT ); Fri, 30 Jun 2017 09:15:28 -0400 Received: from terminus.zytor.com ([65.50.211.136]:41999 "EHLO terminus.zytor.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1751998AbdF3NPZ (ORCPT ); Fri, 30 Jun 2017 09:15:25 -0400 Date: Fri, 30 Jun 2017 06:10:35 -0700 From: "tip-bot for Gustavo A. R. Silva" Message-ID: Cc: linux-kernel@vger.kernel.org, wanpeng.li@hotmail.com, tglx@linutronix.de, peterz@infradead.org, sgruszka@redhat.com, garsilva@embeddedor.com, hpa@zytor.com, fransklaver@gmail.com, mingo@kernel.org, torvalds@linux-foundation.org, riel@redhat.com, fweisbec@gmail.com Reply-To: mingo@kernel.org, fransklaver@gmail.com, hpa@zytor.com, fweisbec@gmail.com, torvalds@linux-foundation.org, riel@redhat.com, tglx@linutronix.de, wanpeng.li@hotmail.com, linux-kernel@vger.kernel.org, garsilva@embeddedor.com, sgruszka@redhat.com, peterz@infradead.org In-Reply-To: <20170629184128.GA5271@embeddedgus> References: <20170629184128.GA5271@embeddedgus> To: linux-tip-commits@vger.kernel.org Subject: [tip:sched/core] sched/cputime: Refactor the cputime_adjust() code Git-Commit-ID: 72298e5c92c50edd8cb7cfda4519483ce65fa166 X-Mailer: tip-git-log-daemon Robot-ID: Robot-Unsubscribe: Contact to get blacklisted from these emails MIME-Version: 1.0 Content-Transfer-Encoding: 8bit Content-Type: text/plain; charset=UTF-8 Content-Disposition: inline Sender: linux-kernel-owner@vger.kernel.org List-ID: X-Mailing-List: linux-kernel@vger.kernel.org Content-Length: 2126 Lines: 63 Commit-ID: 72298e5c92c50edd8cb7cfda4519483ce65fa166 Gitweb: http://git.kernel.org/tip/72298e5c92c50edd8cb7cfda4519483ce65fa166 Author: Gustavo A. R. Silva AuthorDate: Thu, 29 Jun 2017 13:41:28 -0500 Committer: Ingo Molnar CommitDate: Fri, 30 Jun 2017 09:37:59 +0200 sched/cputime: Refactor the cputime_adjust() code Address a Coverity false positive, which is caused by overly convoluted code: Value assigned to variable 'utime' at line 619:utime = rtime; is overwritten at line 642:utime = rtime - stime; before it can be used. This makes such variable assignment useless. Remove this variable assignment and refactor the code related. Addresses-Coverity-ID: 1371643 Signed-off-by: Gustavo A. R. Silva Cc: Frans Klaver Cc: Frederic Weisbecker Cc: Linus Torvalds Cc: Peter Zijlstra Cc: Rik van Riel Cc: Stanislaw Gruszka Cc: Thomas Gleixner Cc: Wanpeng Li Link: http://lkml.kernel.org/r/20170629184128.GA5271@embeddedgus Signed-off-by: Ingo Molnar --- kernel/sched/cputime.c | 16 +++++----------- 1 file changed, 5 insertions(+), 11 deletions(-) diff --git a/kernel/sched/cputime.c b/kernel/sched/cputime.c index aea3135..67c70e2 100644 --- a/kernel/sched/cputime.c +++ b/kernel/sched/cputime.c @@ -615,19 +615,13 @@ static void cputime_adjust(struct task_cputime *curr, * userspace. Once a task gets some ticks, the monotonicy code at * 'update' will ensure things converge to the observed ratio. */ - if (stime == 0) { - utime = rtime; - goto update; + if (stime != 0) { + if (utime == 0) + stime = rtime; + else + stime = scale_stime(stime, rtime, stime + utime); } - if (utime == 0) { - stime = rtime; - goto update; - } - - stime = scale_stime(stime, rtime, stime + utime); - -update: /* * Make sure stime doesn't go backwards; this preserves monotonicity * for utime because rtime is monotonic.