lists.openwall.net   lists  /  announce  owl-users  owl-dev  john-users  john-dev  passwdqc-users  yescrypt  popa3d-users  /  oss-security  kernel-hardening  musl  sabotage  tlsify  passwords  /  crypt-dev  xvendor  /  Bugtraq  Full-Disclosure  linux-kernel  linux-netdev  linux-ext4  linux-hardening  linux-cve-announce  PHC 
Open Source and information security mailing list archives
 
Hash Suite: Windows password security audit tool. GUI, reports in PDF.
[<prev] [next>] [thread-next>] [day] [month] [year] [list]
Message-ID: <6171293.lOV4Wx5bFT@rjwysocki.net>
Date: Tue, 15 Apr 2025 11:52:10 +0200
From: "Rafael J. Wysocki" <rjw@...ysocki.net>
To: Linux PM <linux-pm@...r.kernel.org>
Cc: LKML <linux-kernel@...r.kernel.org>,
 Viresh Kumar <viresh.kumar@...aro.org>,
 Srinivas Pandruvada <srinivas.pandruvada@...ux.intel.com>,
 Mario Limonciello <mario.limonciello@....com>,
 Vincent Guittot <vincent.guittot@...aro.org>,
 Christian Loehle <christian.loehle@....com>,
 Sultan Alsawaf <sultan@...neltoast.com>,
 Peter Zijlstra <peterz@...radead.org>,
 Valentin Schneider <vschneid@...hat.com>, Ingo Molnar <mingo@...hat.com>
Subject:
 [PATCH v2 0/6] cpufreq/sched: Improve synchronization of policy limits
 updates with schedutil

Hi Everyone,

This is an update of

https://lore.kernel.org/linux-pm/3364921.aeNJFYEL58@rjwysocki.net/

that replaces the first patch with a better fix and adds one more patch
after the second one.

The original cover letter is still generally applicable:

"This series of patches has been inspired by the discussion following a bug
 report regarding the patch at

 https://lore.kernel.org/lkml/20241212015734.41241-2-sultan@kerneltoast.com/

 and its attempted unsuccessful resolution:

 https://lore.kernel.org/linux-pm/20250410024439.20859-1-sultan@kerneltoast.com/

 which basically leads to the conclusion that cpufreq policy limits updates are
 not sufficiently synchronized with the scheditil governor, especially in the
 fast switching case in which running the driver callback is the only way to
 make the new policy limits take effect.

 The purpose of this series is to address this concern."

Patch [1/6] is a fix for the issue introduced by the patch linked above (please
see the patch changelog for details), for 6.15-rc.  The remaining patches are
for 6.16.

Patch [2/6] adds memory barriers in two places in schedutil along with some
WRITE_ONCE()/READ_ONCE() annotations to ensure that policy limits updates will
not be missed due to reordering of instructions.

Patch [3/6] prevents limits_changed from being used for purposes unrelated to
changing the policy limits.

Patch [4/6] is a preparatory function rename with no functional impact.

Patch [5/6] updates the cpufreq core to avoid situations in which
cpufreq_driver_resolve_freq(), called by schedutil, may see intermediate
values of policy->min and policy->max and makes that function address the
unlikely case in which it may see policy->min > policy->max.

Patch [6/6] cleans up the code after the previous changes.

Please see individual patch changelogs for details.

Thanks!




Powered by blists - more mailing lists

Powered by Openwall GNU/*/Linux Powered by OpenVZ