Received: by 2002:ac0:aed5:0:0:0:0:0 with SMTP id t21csp2810542imb; Mon, 4 Mar 2019 15:05:03 -0800 (PST) X-Google-Smtp-Source: APXvYqw4Uwb30pkNi8LetygjYHnYIG9r3PWGwZkJejkEzpJ4g38dPwtPmf7GDbEAbZdoHkaEE93m X-Received: by 2002:a65:50cc:: with SMTP id s12mr20582943pgp.130.1551740703104; Mon, 04 Mar 2019 15:05:03 -0800 (PST) ARC-Seal: i=1; a=rsa-sha256; t=1551740703; cv=none; d=google.com; s=arc-20160816; b=i6bjnBMVIVkeFRi4eJgxoaAsO8jA6toc/VTGHGV0V2qTZ+Z3SpGWcypcvR7rWvqrQH f+njLjIsJGLcyfQMDQMl3Exxp6PqrrGl/FSxb0DjKG23NtB1KYIEWUQRdCWToms11PZX 7hn73SbVUnNlkaYHROAf3Dp79uXrp/3SnTHEGt5s4lPGT3YXFVIbTYgCdsBjHP7CcZSV /B2waP7u/ykgZCy1qi65BNkMzJVk0A3mHTAhn1rmEzd0mWqpi+2zYMxrNRlA/+Pprmbp tdMklMOUIXoHqc6nXshFxG2DJhCKkC/1jt7XNEmMukQeUP35auS9m/AIsFA0rFHFj26f UN4A== 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:mime-version :references:in-reply-to:date:cc:to:from:subject:message-id; bh=WfcEgUp6iXAjNBam2Ds3TlIoXz8RyLTx+rndEHzEgm4=; b=XpaOJK4rVEhOICIdVxTKILzqnuVpn/99CIVQUTdTjIwKO0+1BRwunS9jTfH8tMlOQ/ CPmslMKiD0fzYu+xCM4CgBexYM0uJa31YxdOsA4OiUkZvzUTiTbJ3DwA8oSlNUPx1z72 b16HsWCMwT0FiV1WAOumRVHxkqtcBhB3puzgwDr79BzIFSWT+Mbnr4kRYePEb5JI4XM1 EkfKixF+0a/GqkZ8RJDfBHbZL41Xym74PqWGx6CCYZ3L2MUzMiU1A+xziybXAb2juAQz OWXJMXXSAAGa+4OUedPnQ8H/PjnxZoa0je9bvErO0pGB/rrqjZ3/h90E1BxlWN4S5i3m w48w== 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; dmarc=fail (p=NONE sp=NONE dis=NONE) header.from=intel.com Return-Path: Received: from vger.kernel.org (vger.kernel.org. [209.132.180.67]) by mx.google.com with ESMTP id g19si6196828pgg.235.2019.03.04.15.04.45; Mon, 04 Mar 2019 15:05:03 -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; dmarc=fail (p=NONE sp=NONE dis=NONE) header.from=intel.com Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1726585AbfCDXEI (ORCPT + 99 others); Mon, 4 Mar 2019 18:04:08 -0500 Received: from mga14.intel.com ([192.55.52.115]:54252 "EHLO mga14.intel.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1726069AbfCDXEI (ORCPT ); Mon, 4 Mar 2019 18:04:08 -0500 X-Amp-Result: SKIPPED(no attachment in message) X-Amp-File-Uploaded: False Received: from orsmga003.jf.intel.com ([10.7.209.27]) by fmsmga103.fm.intel.com with ESMTP/TLS/DHE-RSA-AES256-GCM-SHA384; 04 Mar 2019 15:04:07 -0800 X-ExtLoop1: 1 X-IronPort-AV: E=Sophos;i="5.58,441,1544515200"; d="scan'208";a="131232787" Received: from spandruv-desk.jf.intel.com ([10.54.75.31]) by orsmga003.jf.intel.com with ESMTP; 04 Mar 2019 15:04:07 -0800 Message-ID: Subject: Re: [RFT][PATCH 0/2] cpufreq: intel_pstate: Handle _PPC updates on global turbo disable/enable From: Srinivas Pandruvada To: "Rafael J. Wysocki" Cc: "Rafael J. Wysocki" , Linux PM , LKML , Viresh Kumar , Chen Yu , Gabriele Mazzotta Date: Mon, 04 Mar 2019 15:04:07 -0800 In-Reply-To: References: <9956076.F4luUDm1Dq@aspire.rjw.lan> <47ce61b9df7701e047ef6f59afd54c854db8a538.camel@linux.intel.com> <9099672e17ea9fc7711b34e92ce5a016afb43a0c.camel@linux.intel.com> Content-Type: text/plain; charset="UTF-8" X-Mailer: Evolution 3.28.5 (3.28.5-2.fc28) Mime-Version: 1.0 Content-Transfer-Encoding: 7bit Sender: linux-kernel-owner@vger.kernel.org Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org On Mon, 2019-03-04 at 22:57 +0100, Rafael J. Wysocki wrote: > On Mon, Mar 4, 2019 at 7:06 PM Srinivas Pandruvada > wrote: > > > > [...] > > > > There are other methods like PL1 budget limit for such cases. > > > > FW > > > > can > > > > just change the config TDP level. > > > > > > OK, but that would be done without notification I suppose? > > > > There is a notification via processor PCI device (B0D4). This is > > passed > > to user space to change the power limits. The new element is called > > PPCC and it is exposed via sysfs. > > What do you mean by "new element" and how exactly is it exposed? This is part of DPTF processor ACPI object (INT3401 or B0D4). They are exposed in sysfs E.g, /sys/bus/platform/devices/INT3401:00/power_limits/ There is a thermal uevent sent when they change. Both dptf daemon and thermald listen and use to set rapl power-constraints including step sizes for control. Someone can write a udev rule to do the same. > > > Disabling turbo is not very interesting as there can be more turbo > > than > > non turbo. So you loose lots of performance. So instead you can > > control > > power in turbo region to give you more control. _PPC is even less > > interesting as you can't control uncore power. > > I guess that designers should know about that. The kernel is on the > receiving end here. :-) I think they know. Hence you don't see this issue of enable/disable of turbo by firmware quite often. This laptop here I guess released in beginning of 2014 with Haswell. > > > > [...] > > I guess that you are talking about intel_pstate_update_max_freq() > which acquires policy->rwsem. If so, what exactly is the problem > with > it? I was suggesting to use an API/define in cpufreq.h which does operation on policy->rwsem for better abstraction. This is the first time it was used outside core cpufreq.c. As more places it will be used in future, common function will help debug, if in some path there is a bug in aquire/release of semaphore. But you can ignore this. Thanks, Srinivas