From mboxrd@z Thu Jan 1 00:00:00 1970 From: "Rafael J. Wysocki" Subject: Re: [PATCH 0/3] Hook up powerclamp with PM QOS and cpuidle Date: Wed, 27 Nov 2013 21:47:45 +0100 Message-ID: <2216977.ZlIXxP0jsM@vostro.rjw.lan> References: <1385508011-26914-1-git-send-email-jacob.jun.pan@linux.intel.com> <20131127115634.GA10022@twins.programming.kicks-ass.net> <20131127084732.00006425@unknown> Mime-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: 7Bit Return-path: Received: from v094114.home.net.pl ([79.96.170.134]:49969 "HELO v094114.home.net.pl" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with SMTP id S1757615Ab3K0Uez (ORCPT ); Wed, 27 Nov 2013 15:34:55 -0500 In-Reply-To: <20131127084732.00006425@unknown> Sender: linux-pm-owner@vger.kernel.org List-Id: linux-pm@vger.kernel.org To: jacob pan Cc: Peter Zijlstra , Linux PM , LKML , Rafael Wysocki , Len Brown , Arjan van de Ven , Zhang Rui On Wednesday, November 27, 2013 08:47:32 AM jacob pan wrote: > On Wed, 27 Nov 2013 12:56:34 +0100 > Peter Zijlstra wrote: > > > On Tue, Nov 26, 2013 at 03:20:08PM -0800, Jacob Pan wrote: > > > This patchset is intended to address the behavior change and > > > efficiency loss introduced by using consolidated idle routine in > > > powerclamp driver. > > > > > > Specifically, > > > [PATCH 3/8] idle, thermal, acpi: Remove home grown idle > > > implementations > > > > > > The motivation is that after using common idle routine, powerclamp > > > driver can no longer pick the deepest idle state needed to conserve > > > power. Idle state is selected by governors which can be influenced > > > by PM QOS and other factors. This patchset hooks up powerclamp idle > > > injection with PM QOS and eventually influce idle governors to pick > > > the power saving target states. > > > > > > There are some downside of this approach. Due to overhead, > > > communication with PM QOS is at enable/disable idle injection time > > > instead of each injection period. The implication is that if the > > > system natual idle is more than target injected idle, powerclamp > > > will skip some injection period. During this period however, > > > deepest idle state may still be chosen necessarily regardless the > > > latency constraint. > > > > Does the QoS stuff have a means of notifying its users of constraints > > violation? I suspect some applications might light to be told if their > > requests aren't honoured. > > > Each class has a notifier. This patchset is calling the notifier > when the qos class is disable/enable. the receiver of these > notifications are in the kernel. > > I don't see the qos core code has a way to signal userspace about > target change. But user space can add constraints and expect them to be actually satisfied. If those constraints cannot be satisfied, there should be a mechanism to notify the processes who set them about that. That mechanism is not present currently. Thanks, Rafael