Received: by 10.213.65.68 with SMTP id h4csp690198imn; Fri, 6 Apr 2018 07:21:01 -0700 (PDT) X-Google-Smtp-Source: AIpwx488CKOtakVW6u+0Fvw0VY6nxhXC2WP8PpSCmUm/rKMygvONegjEKnavol8s9nHir3ALP/0C X-Received: by 10.99.95.214 with SMTP id t205mr18171784pgb.145.1523024460971; Fri, 06 Apr 2018 07:21:00 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; t=1523024460; cv=none; d=google.com; s=arc-20160816; b=uCJfUE94itsYRfmm0oIWzxu7a5gbDZ35AGgtT1ivq2Ckq9slOBWZEM8K7wS5lmgEeN 51FZ4PEz/YR1LWQ9FBJSq8rMiqhxS8Mj/amgn39KBZ5Anna/BRuyT7Q3XLP6o3qkjP7R ScYv4/Wr9A0qlGkYj7Q4D1dND1GR5OwArfGYC/WGl+F3vUGrPg6CNy/5hPRv5M5csqk8 bSxTGeDnRLcxya7RZQavjj5bKHDRsaUcjMh2HtPVIhyvbdcWEwUWazViyz8p5NESc3pj iAS/LCwVo7D12n4kitC8o174p0IbH0JLDM/aXhCrlP+PIAh5byiryHkjnU4c9qpDG00o eibg== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=list-id:precedence:sender:user-agent:in-reply-to :content-disposition:mime-version:references:message-id:subject:cc :to:from:date:dmarc-filter:arc-authentication-results; bh=wTwXcs2AMwdA7ZnQN0e/xJOzB4UkklRq1d/hVjq0Ua8=; b=MZJCTf8zhgv1GVOAJ+gCPExaAmI5FMN7SZ7oE0cwxpgsgW57ub7Xsszcnsc5M57Mgc fjb3qHdBaAOcZmFdUdH1z8U43BGZxWP4qzmed56l7NurwMiRMVFljR9kE/dU6QyDqu6l pSaXYLPynVwO5bj434DYuXiyWNNvTlGICJYOdY0nEYt9DikNvtpUsqZjCFKfystonAHF BtnsC73mGn0h4rhdAGV56/m4o9+XKFn7PU4U4HoSTZ3u+Qyu1IKgmNDU/ygxXFgpw7Qh 96Geoq8MXp5HRxKakoWuIHS4OxJMu9rLmgT/WtbjAAxTFhgMwdtrrq4MRTQzzkZ/f8KR dGMA== 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 f1-v6si11048686pld.168.2018.04.06.07.20.47; Fri, 06 Apr 2018 07:21:00 -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; 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 S1756439AbeDFOTg (ORCPT + 99 others); Fri, 6 Apr 2018 10:19:36 -0400 Received: from mail.kernel.org ([198.145.29.99]:55844 "EHLO mail.kernel.org" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S932261AbeDFOTT (ORCPT ); Fri, 6 Apr 2018 10:19:19 -0400 Received: from localhost (LFbn-NCY-1-193-82.w83-194.abo.wanadoo.fr [83.194.41.82]) (using TLSv1.2 with cipher ECDHE-RSA-AES128-GCM-SHA256 (128/128 bits)) (No client certificate requested) by mail.kernel.org (Postfix) with ESMTPSA id 79EA620B80; Fri, 6 Apr 2018 14:19:18 +0000 (UTC) DMARC-Filter: OpenDMARC Filter v1.3.2 mail.kernel.org 79EA620B80 Authentication-Results: mail.kernel.org; dmarc=none (p=none dis=none) header.from=kernel.org Authentication-Results: mail.kernel.org; spf=none smtp.mailfrom=frederic@kernel.org Date: Fri, 6 Apr 2018 16:19:16 +0200 From: Frederic Weisbecker To: "Rafael J. Wysocki" Cc: Linux PM , Peter Zijlstra , Frederic Weisbecker , Thomas Gleixner , Paul McKenney , Thomas Ilsche , Doug Smythies , Rik van Riel , Aubrey Li , Mike Galbraith , LKML , Len Brown Subject: Re: [PATCH v9 05/10] cpuidle: Return nohz hint from cpuidle_select() Message-ID: <20180406141915.GC4400@lerouge> References: <1736751.LdhZHb50jq@aspire.rjw.lan> <5818594.T4StF86Hkt@aspire.rjw.lan> <20180406024413.GB4400@lerouge> <1694033.ykrRIB27yN@aspire.rjw.lan> MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Disposition: inline In-Reply-To: <1694033.ykrRIB27yN@aspire.rjw.lan> User-Agent: Mutt/1.5.24 (2015-08-30) Sender: linux-kernel-owner@vger.kernel.org Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org On Fri, Apr 06, 2018 at 09:24:42AM +0200, Rafael J. Wysocki wrote: > On Friday, April 6, 2018 4:44:14 AM CEST Frederic Weisbecker wrote: > > On Wed, Apr 04, 2018 at 10:39:50AM +0200, Rafael J. Wysocki wrote: > > > From: Rafael J. Wysocki > > > Index: linux-pm/kernel/time/tick-sched.c > > > =================================================================== > > > --- linux-pm.orig/kernel/time/tick-sched.c > > > +++ linux-pm/kernel/time/tick-sched.c > > > @@ -991,6 +991,20 @@ void tick_nohz_irq_exit(void) > > > } > > > > > > /** > > > + * tick_nohz_idle_got_tick - Check whether or not the tick handler has run > > > + */ > > > +bool tick_nohz_idle_got_tick(void) > > > +{ > > > + struct tick_sched *ts = this_cpu_ptr(&tick_cpu_sched); > > > + > > > + if (ts->inidle > 1) { > > > + ts->inidle = 1; > > > + return true; > > > + } > > > + return false; > > > +} > > > + > > > +/** > > > * tick_nohz_get_sleep_length - return the length of the current sleep > > > * > > > * Called from power state control code with interrupts disabled > > > @@ -1101,6 +1115,9 @@ static void tick_nohz_handler(struct clo > > > struct pt_regs *regs = get_irq_regs(); > > > ktime_t now = ktime_get(); > > > > > > + if (ts->inidle) > > > + ts->inidle = 2; > > > + > > > > You can move that to tick_sched_do_timer() to avoid code duplication. > > Right. > > > Also these constants are very opaque. And even with proper symbols it wouldn't look > > right to extend ts->inidle that way. > > Well, this was a Peter's idea. :-) > > > Perhaps you should add a field such as ts->got_idle_tick under the boolean fields > > after the below patch: > > OK, but at this point I'd prefer to make such changes on top of the existing > set, because that's got quite some testing coverage already and honestly this > is cosmetics in my view (albeit important). Sure! Thanks.