Received: by 2002:a05:6a10:16a7:0:0:0:0 with SMTP id gp39csp695025pxb; Thu, 5 Nov 2020 10:27:11 -0800 (PST) X-Google-Smtp-Source: ABdhPJw9hH0x/sdVC41iDcliFscHLVESbta/O3lKmPKeeWaVd70Bei34WnpxjORjJKh9ca4w0Yhu X-Received: by 2002:a17:906:c43:: with SMTP id t3mr3518080ejf.219.1604600831515; Thu, 05 Nov 2020 10:27:11 -0800 (PST) ARC-Seal: i=1; a=rsa-sha256; t=1604600831; cv=none; d=google.com; s=arc-20160816; b=OsQ4emYiJCxHaovxGlr6aTAh8hG4M7xHQKdlH7mH91QKRZfDqAlNZ/sSrpeGX8xwAp sM2ao5yjjXHX1tXG6YWQhBc8y4lk/YemPEYvbJG3GzTdvLTAS73K/RdmXHBazu0hqG6m md5IZikOz8hkKt6PMK/9/dAgGVuE6sLhZdWc8T0YeQSIdq6akV0j/57ZsGDOhLSekPwq ef0WuueRdSCw2KLVyJNyZ8ITqykbk4bATmuTQV8L00OcoJCXlZ6avF4cLxcRjSMb8Qwx DUPC9f7ikyUKO4WeMSSAO+DY9A3veXQFN2GKlkN9toIospsIFhLJG4fwm7iPpRSftnzC eblw== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=list-id:precedence:content-transfer-encoding:mime-version :message-id:date:subject:cc:to:from; bh=VMU4cp9qVNDh5+RmhwX8vJ1/EiB7Wt9trwKzjoNo9zw=; b=q9EH/1zmrBXoMr6NZ1T95ddcS81fWp2itmZyKWmowW9fBYCNiGenob3Kxp7AxaKqgv fw9tF0nI4kFC8kjmFoEI/ZzzD0VF1UbJMoYJZaoX7815nT8JBjUvvl8CK96C7HBBTjqz bbaw3H57R7JsQJDS5hTbSY0/eiRfrCtIHXxWNdBXdXdgCAGurFcmNMB0rLs7mcTRiu2a BN03pgkResklJl42gCyquT3JyVU8tyqcBR5nvS1W9j9zl6BMbiekjoN51puspmKJGNJ1 O0D6poMaBa3UJcd+zKIB1O8nOhwfld5/jTIv6GQ+iYXLy3eOjEHxcGDUj32SO1kP705k FZTA== ARC-Authentication-Results: i=1; mx.google.com; spf=pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 23.128.96.18 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org Return-Path: Received: from vger.kernel.org (vger.kernel.org. [23.128.96.18]) by mx.google.com with ESMTP id m8si1871226edj.357.2020.11.05.10.26.48; Thu, 05 Nov 2020 10:27:11 -0800 (PST) Received-SPF: pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 23.128.96.18 as permitted sender) client-ip=23.128.96.18; Authentication-Results: mx.google.com; spf=pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 23.128.96.18 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1731818AbgKESZY (ORCPT + 99 others); Thu, 5 Nov 2020 13:25:24 -0500 Received: from cloudserver094114.home.pl ([79.96.170.134]:61274 "EHLO cloudserver094114.home.pl" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1726214AbgKESZW (ORCPT ); Thu, 5 Nov 2020 13:25:22 -0500 Received: from 89-64-88-191.dynamic.chello.pl (89.64.88.191) (HELO kreacher.localnet) by serwer1319399.home.pl (79.96.170.134) with SMTP (IdeaSmtpServer 0.83.514) id 64633fd2ce86f13d; Thu, 5 Nov 2020 19:25:20 +0100 From: "Rafael J. Wysocki" To: Linux PM Cc: "Rafael J. Wysocki" , Viresh Kumar , Srinivas Pandruvada , Zhang Rui , LKML Subject: [PATCH 0/2] cpufreq: intel_pstate: Handle powersave governor correctly in the passive mode with HWP Date: Thu, 05 Nov 2020 19:17:54 +0100 Message-ID: <7417968.Ghue05m4RV@kreacher> MIME-Version: 1.0 Content-Transfer-Encoding: 7Bit Content-Type: text/plain; charset="us-ascii" Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org Hi, Even after the changes made very recently, the handling of the powersave governor is not exactly as expected when intel_pstate operates in the "passive" mode with HWP enabled. Namely, in that case HWP is not limited to the policy min frequency, but it can scale the frequency up to the policy max limit and it cannot be constrained currently, because the governor has no way to tell the driver how much room there is for adjustments around the target frequency passed to it. For this reason, patch [1/2] introduces new policy parameters, target_min and target_max, that can be used by the governor to pass that information to the driver and modifies the powersave and peformance governors to use them. Patch [2/2] modifies intel_pstate to take them into account so as to fix the powersave governor issue, but they may be applicable for other purposes in the future (eg. if the driver is updated to pass the "desired" P-state to the HWP logic instead of just setting the HWP floor to the target one, both the powersave and performance governors will need target_min and target_max to basically work as documented). Thanks!