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-prev] [thread-next>] [day] [month] [year] [list]
Date: Fri, 22 Mar 2024 03:33:42 +0000
From: "Yuan, Perry" <Perry.Yuan@....com>
To: "Ugwekar, Dhananjay" <Dhananjay.Ugwekar@....com>,
	"rafael.j.wysocki@...el.com" <rafael.j.wysocki@...el.com>, "Limonciello,
 Mario" <Mario.Limonciello@....com>, "viresh.kumar@...aro.org"
	<viresh.kumar@...aro.org>, "Shenoy, Gautham Ranjal" <gautham.shenoy@....com>,
	"Petkov, Borislav" <Borislav.Petkov@....com>, "Huang, Ray"
	<Ray.Huang@....com>
CC: "Deucher, Alexander" <Alexander.Deucher@....com>, "Huang, Shimmer"
	<Shimmer.Huang@....com>, "oleksandr@...alenko.name"
	<oleksandr@...alenko.name>, "Du, Xiaojian" <Xiaojian.Du@....com>, "Meng, Li
 (Jassmine)" <Li.Meng@....com>, "linux-pm@...r.kernel.org"
	<linux-pm@...r.kernel.org>, "linux-kernel@...r.kernel.org"
	<linux-kernel@...r.kernel.org>
Subject: RE: [PATCH v9 0/8] AMD Pstate Fixes And Enhancements

[AMD Official Use Only - General]

Regards.
Perry

> -----Original Message-----
> From: Ugwekar, Dhananjay <Dhananjay.Ugwekar@....com>
> Sent: Wednesday, March 20, 2024 6:48 PM
> To: Yuan, Perry <Perry.Yuan@....com>; rafael.j.wysocki@...el.com;
> Limonciello, Mario <Mario.Limonciello@....com>; viresh.kumar@...aro.org;
> Shenoy, Gautham Ranjal <gautham.shenoy@....com>; Petkov, Borislav
> <Borislav.Petkov@....com>; Huang, Ray <Ray.Huang@....com>
> Cc: Deucher, Alexander <Alexander.Deucher@....com>; Huang, Shimmer
> <Shimmer.Huang@....com>; oleksandr@...alenko.name; Du, Xiaojian
> <Xiaojian.Du@....com>; Meng, Li (Jassmine) <Li.Meng@....com>; linux-
> pm@...r.kernel.org; linux-kernel@...r.kernel.org
> Subject: Re: [PATCH v9 0/8] AMD Pstate Fixes And Enhancements
>
> On 3/19/2024 1:58 PM, Perry Yuan wrote:
> > The patch series adds some fixes and enhancements to the AMD pstate
> > driver.
> >
> > It enables CPPC v2 for certain processors in the family 17H, as
> > requested by TR40 processor users who expect improved performance and
> > lower system temperature.
> >
> > changes latency and delay values to be read from platform firmware
> > firstly for more accurate timing.
> >
> > A new quirk is introduced for supporting amd-pstate on legacy
> > processors which either lack CPPC capability, or only only have CPPC
> > v2 capability
> >
> > Testing done with one APU system while cpb boost on:
> >
> > amd_pstate_lowest_nonlinear_freq:1701000
> > amd_pstate_max_freq:3501000
> > cpuinfo_max_freq:3501000
> > cpuinfo_min_freq:400000
> > scaling_cur_freq:3084836
> > scaling_max_freq:3501000
> > scaling_min_freq:400000
> >
> > analyzing CPU 6:
> >   driver: amd-pstate-epp
> >   CPUs which run at the same hardware frequency: 6
> >   CPUs which need to have their frequency coordinated by software: 6
> >   maximum transition latency:  Cannot determine or is not supported.
> >   hardware limits: 400 MHz - 3.50 GHz
> >   available cpufreq governors: performance powersave
> >   current policy: frequency should be within 400 MHz and 3.50 GHz.
> >                   The governor "powersave" may decide which speed to use
> >                   within this range.
> >   current CPU frequency: Unable to call hardware
> >   current CPU frequency: 3.50 GHz (asserted by call to kernel)
> >   boost state support:
> >     Supported: yes
> >     Active: yes
> >     AMD PSTATE Highest Performance: 255. Maximum Frequency: 3.50 GHz.
> >     AMD PSTATE Nominal Performance: 204. Nominal Frequency: 2.80 GHz.
> >     AMD PSTATE Lowest Non-linear Performance: 124. Lowest Non-linear
> Frequency: 1.70 GHz.
> >     AMD PSTATE Lowest Performance: 30. Lowest Frequency: 400 MHz.
> >
> >
> > I would greatly appreciate any feedbacks.
> > Thank you!
> > Perry.
> >
>
> I have tested the patch on AMD Zen4 Genoa machine with boost off,
>
> With Patchset:
>
> /sys/devices/system/cpu/cpu89/cpufreq# grep . *freq
> amd_pstate_lowest_nonlinear_freq:1804000
> amd_pstate_max_freq:3514000
> cpuinfo_max_freq:2151000
> cpuinfo_min_freq:400000
> scaling_cur_freq:1805231
> scaling_max_freq:2151000
> scaling_min_freq:400000
>
> /sys/devices/system/cpu/cpu89/cpufreq# cat cpuinfo_transition_latency
> 20000
>
> Without Patchset:
>
> /sys/devices/system/cpu/cpu104/cpufreq# grep . *freq
> amd_pstate_lowest_nonlinear_freq:1804403
> amd_pstate_max_freq:3514280
> cpuinfo_max_freq:2151000
> cpuinfo_min_freq:400000
> scaling_cur_freq:1805375
> scaling_max_freq:2151000
> scaling_min_freq:400000
>
> /sys/devices/system/cpu/cpu104/cpufreq# cat cpuinfo_transition_latency
> 20000
>
> The amd_pstate_max_freq seems to be incorrect with and without the
> patchset when the boost is disabled, which is supposed to be fixed in the cpb
> patchset.
> Rest looks good to me.
>
> Tested-by: Dhananjay Ugwekar <Dhananjay.Ugwekar@....com>
>
> Thanks,
> Dhananjay

Thank you Dhananjay!
Will pick up your test by flag in next version.

Perry.

>
> > Changes from v8:
> >  * add commit log for patch 1 and patch 2 (Rafael)
> >  * add missing Perry signed-off-by for new patches #1,#2,#4 (Rafael)
> >  * rebased to latest linux-pm/bleeding-edge
> >
> > Changes from v7:
> >  * Gautham helped to invole some new improved patches into the patchset.
> >  * Adds comments for cpudata->{min,max}_limit_{perf,freq}, variables [New
> Patch].
> >  * Clarifies that the units for cpudata->*_freq is in khz via comments [New
> Patch].
> >  * Implements the unified computation of all cpudata->*_freq
> >  * v7 Patch 2/6 was dropped which is not needed any more
> >  * moved the quirk check to the amd_pstate_get_freq() function
> >  * pick up RB flags from Gautham
> >  * After the cleanup in patch 3, we don't need the helpers
> >    amd_get_{min,max,nominal,lowest_nonlinear}_freq(). This
> >    patch removes it [New Patch].
> >  * testing done on APU system as well, no regression found.
> >
> > Changes from v6:
> >  * add one new patch to initialize capabilities in
> >    amd_pstate_init_perf which can avoid duplicate cppc capabilities read
> >    the change has been tested on APU system.
> >  * pick up RB flags from Gautham
> >  * drop the patch 1/6 which has been merged by Rafael
> >
> > Changes from v5:
> >  * rebased to linux-pm v6.8
> >  * pick up RB flag from for patch 6(Mario)
> >
> > Changes from v4:
> >  * improve the dmi matching rule with zen2 flag only
> >
> > Changes from v3:
> >  * change quirk matching broken BIOS with family/model ID and Zen2
> >    flag to fix the CPPC definition issue
> >  * fix typo in quirk
> >
> > Changes from v2:
> >  * change quirk matching to BIOS version and release (Mario)
> >  * pick up RB flag from Mario
> >
> > Changes from v1:
> >  * pick up the RB flags from Mario
> >  * address review comment of patch #6 for amd_get_nominal_freq()
> >  * rebased the series to linux-pm/bleeding-edge v6.8.0-rc2
> >  * update debug log for patch #5 as Mario suggested.
> >  * fix some typos and format problems
> >  * tested on 7950X platform
> >
> >
> > V1:
> > https://lore.kernel.org/lkml/63c2b3d7-083a-4daa-ba40-
> 629b3223a92d@...l
> > box.org/
> > V2:
> > https://lore.kernel.org/all/cover.1706863981.git.perry.yuan@amd.com/
> > v3:
> > https://lore.kernel.org/lkml/cover.1707016927.git.perry.yuan@amd.com/
> > v4:
> > https://lore.kernel.org/lkml/cover.1707193566.git.perry.yuan@amd.com/
> > v5:
> > https://lore.kernel.org/lkml/cover.1707273526.git.perry.yuan@amd.com/
> > v6:
> > https://lore.kernel.org/lkml/cover.1707363758.git.perry.yuan@amd.com/
> > v7:
> > https://lore.kernel.org/lkml/cover.1710323410.git.perry.yuan@amd.com/
> > v8:
> > https://lore.kernel.org/lkml/cover.1710754409.git.perry.yuan@amd.com/
> >
> > Gautham R. Shenoy (3):
> >   cpufreq: amd-pstate: Document *_limit_* fields in struct amd_cpudata
> >   cpufreq: amd-pstate: Document the units for freq variables in
> >     amd_cpudata
> >   cpufreq: amd-pstate: Remove
> >     amd_get_{min,max,nominal,lowest_nonlinear}_freq()
> >
> > Perry Yuan (5):
> >   cpufreq: amd-pstate: Unify computation of
> >     {max,min,nominal,lowest_nonlinear}_freq
> >   cpufreq: amd-pstate: Bail out if min/max/nominal_freq is 0
> >   cpufreq: amd-pstate: get transition delay and latency value from ACPI
> >     tables
> >   cppc_acpi: print error message if CPPC is unsupported
> >   cpufreq: amd-pstate: Add quirk for the pstate CPPC capabilities
> >     missing
> >
> >  drivers/acpi/cppc_acpi.c     |   4 +-
> >  drivers/cpufreq/amd-pstate.c | 257 +++++++++++++++++++++--------------
> >  include/linux/amd-pstate.h   |  20 ++-
> >  3 files changed, 174 insertions(+), 107 deletions(-)
> >

Powered by blists - more mailing lists

Powered by Openwall GNU/*/Linux Powered by OpenVZ