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]
Message-ID:
 <CYYPR12MB86555D37D70EC0C4CB6A995E9CE62@CYYPR12MB8655.namprd12.prod.outlook.com>
Date: Thu, 9 May 2024 16:03:28 +0000
From: "Yuan, Perry" <Perry.Yuan@....com>
To: Oleksandr Natalenko <oleksandr@...alenko.name>,
	"rafael.j.wysocki@...el.com" <rafael.j.wysocki@...el.com>,
	"viresh.kumar@...aro.org" <viresh.kumar@...aro.org>, "Huang, Ray"
	<Ray.Huang@....com>, "Shenoy, Gautham Ranjal" <gautham.shenoy@....com>,
	"Petkov, Borislav" <Borislav.Petkov@....com>, "Limonciello, Mario"
	<Mario.Limonciello@....com>
CC: "Deucher, Alexander" <Alexander.Deucher@....com>, "Huang, Shimmer"
	<Shimmer.Huang@....com>, "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 v10 0/7] AMD Pstate Driver Core Performance Boost

[AMD Official Use Only - General]

 Hi Oleksandr

> -----Original Message-----
> From: Oleksandr Natalenko <oleksandr@...alenko.name>
> Sent: Thursday, May 9, 2024 8:01 PM
> To: rafael.j.wysocki@...el.com; viresh.kumar@...aro.org; Huang, Ray
> <Ray.Huang@....com>; Shenoy, Gautham Ranjal
> <gautham.shenoy@....com>; Petkov, Borislav
> <Borislav.Petkov@....com>; Yuan, Perry <Perry.Yuan@....com>;
> Limonciello, Mario <Mario.Limonciello@....com>
> Cc: Deucher, Alexander <Alexander.Deucher@....com>; Huang, Shimmer
> <Shimmer.Huang@....com>; Du, Xiaojian <Xiaojian.Du@....com>; Meng,
> Li (Jassmine) <Li.Meng@....com>; linux-pm@...r.kernel.org; linux-
> kernel@...r.kernel.org
> Subject: Re: [PATCH v10 0/7] AMD Pstate Driver Core Performance Boost
>
> On čtvrtek 9. května 2024 0:13:49, SELČ Mario Limonciello wrote:
> > On 5/8/2024 16:31, Oleksandr Natalenko wrote:
> > > On středa 8. května 2024 21:21:39, SELČ Oleksandr Natalenko wrote:
> > >> On středa 8. května 2024 21:13:40, SELČ Oleksandr Natalenko wrote:
> > >>> On středa 8. května 2024 17:11:42, SELČ Oleksandr Natalenko wrote:
> > >>>> Hello.
> > >>>>
> > >>>> On středa 8. května 2024 9:21:05, SELČ Perry Yuan wrote:
> > >>>>> Hi all,
> > >>>>> The patchset series add core performance boost feature for AMD
> > >>>>> pstate driver including passisve ,guide and active mode support.
> > >>>>>
> > >>>>> User can change core frequency boost control with a new sysfs
> entry:
> > >>>>>
> > >>>>> "/sys/devices/system/cpu/amd_pstate/cpb_boost"
> > >>>>>
> > >>>>>
> > >>>>> 1) globally disable core boost:
> > >>>>> $ sudo bash -c "echo 0 >
> /sys/devices/system/cpu/amd_pstate/cpb_boost"
> > >>>>> $ lscpu -ae
> > >>>>> CPU NODE SOCKET CORE L1d:L1i:L2:L3 ONLINE    MAXMHZ   MINMHZ
> MHZ
> > >>>>>    0    0      0    0 0:0:0:0          yes 4201.0000 400.0000 2983.578
> > >>>>>    1    0      0    1 1:1:1:0          yes 4201.0000 400.0000 2983.578
> > >>>>>    2    0      0    2 2:2:2:0          yes 4201.0000 400.0000 2583.855
> > >>>>>    3    0      0    3 3:3:3:0          yes 4201.0000 400.0000 2983.578
> > >>>>>    4    0      0    4 4:4:4:0          yes 4201.0000 400.0000 2983.578
> > >>>>>
> > >>>>> 2) globally enable core boost:
> > >>>>> $ sudo bash -c "echo 1 >
> /sys/devices/system/cpu/amd_pstate/cpb_boost"
> > >>>>> $ lscpu -ae
> > >>>>>     0    0      0    0 0:0:0:0          yes 5759.0000 400.0000 2983.578
> > >>>>>    1    0      0    1 1:1:1:0          yes 5759.0000 400.0000 2983.578
> > >>>>>    2    0      0    2 2:2:2:0          yes 5759.0000 400.0000 2983.578
> > >>>>>    3    0      0    3 3:3:3:0          yes 5759.0000 400.0000 2983.578
> > >>>>>    4    0      0    4 4:4:4:0          yes 5759.0000 400.0000 2983.578
> > >>>>>
> > >>>>>
> > >>>>>
> ==========================================================
> ======
> > >>>>> ============ The V9 patches add per CPU boost control, user can
> > >>>>> enable/disable CPUs boost as the below command tested on a
> > >>>>> laptop system.
> > >>>>> # before
> > >>>>>    CPU NODE SOCKET CORE L1d:L1i:L2:L3 ONLINE    MAXMHZ
> MINMHZ       MHZ
> > >>>>>    0    0      0    0 0:0:0:0          yes 4208.0000 400.0000 1666.7740
> > >>>>>    1    0      0    0 0:0:0:0          yes 4208.0000 400.0000  400.0000
> > >>>>>    2    0      0    1 1:1:1:0          yes 4208.0000 400.0000 3386.1260
> > >>>>>    3    0      0    1 1:1:1:0          yes 4208.0000 400.0000  400.0000
> > >>>>> $ sudo rdmsr 0xc00102b3 -p 0
> > >>>>> 10a6
> > >>>>>
> > >>>>> $ sudo bash -c "echo 1 >
> /sys/devices/system/cpu/cpu0/cpufreq/boost"
> > >>>>> # after
> > >>>>>    CPU NODE SOCKET CORE L1d:L1i:L2:L3 ONLINE    MAXMHZ
> MINMHZ       MHZ
> > >>>>>      0    0      0    0 0:0:0:0          yes 3501.0000 400.0000  400.0000
> > >>>>>      1    0      0    0 0:0:0:0          yes 4208.0000 400.0000 1391.0690
> > >>>>>      2    0      0    1 1:1:1:0          yes 4208.0000 400.0000 3654.4541
> > >>>>>      3    0      0    1 1:1:1:0          yes 4208.0000 400.0000  400.0000
> > >>>>> $ sudo rdmsr 0xc00102b3 -p 0
> > >>>>> 108a
> > >>>>>
> > >>>>>
> > >>>>> The patches have been tested with the AMD 7950X processor and
> > >>>>> many users would like to get core boost control enabled for power
> saving.
> > >>>>>
> > >>>>> Perry.
> > >>>>>
> > >>>>>
> > >>>>> Changes from v9:
> > >>>>>   * change per CPU boost sysfs file name to `boost` (Mario)
> > >>>>>   * rebased to latest linux-pm/bleeding-edge
> > >>>>>
> > >>>>> Changes from v8:
> > >>>>>   * pick RB flag for patch 4 (Mario)
> > >>>>>   * change boot_cpu_has to cpu_feature_enabled for patch 2 (Boris)
> > >>>>>   * merge patch 6 into patch 3 (Mario)
> > >>>>>   * add two patch for per CPU boost control patch 6 & 7(Mario)
> > >>>>>   * rebased to latest linux-pm/bleeding-edge
> > >>>>>
> > >>>>> Changes from v7:
> > >>>>>   * fix the mutext locking issue in the sysfs file update(Ray, Mario)
> > >>>>>   * pick ack flag from Ray
> > >>>>>   * use X86_FEATURE_CPB to verify the CPB function in Patch #2(Ray)
> > >>>>>   * rerun the testing to check function works well
> > >>>>>   * rebased to linux-pm/bleeding-edge latest
> > >>>>>
> > >>>>> Changes from v6:
> > >>>>>   * reword patch 2 commit log (Gautham)
> > >>>>>   * update cover letter description(Gautham)
> > >>>>>   * rebase to kernel v6.9-rc5
> > >>>>>
> > >>>>> Changes from v4:
> > >>>>>   * drop the legacy boost remove patch, let us keep the legacy
> interface
> > >>>>>     in case some applications break.
> > >>>>>   * rebase to linux-pm/bleeding-edge branch
> > >>>>>   * rework the patchset base on [PATCH v8 0/8] AMD Pstate Fixes
> And
> > >>>>>     Enhancements which has some intial work done there.
> > >>>>>
> > >>>>> Changes from v4:
> > >>>>>   * move MSR_K7_HWCR_CPB_DIS_BIT into msr-index.h
> > >>>>>   * pick RB flag from Gautham R. Shenoy
> > >>>>>   * add Cc Oleksandr Natalenko <oleksandr@...alenko.name>
> > >>>>>   * rebase to latest linux-pm/bleeding-edge branch
> > >>>>>   * rebase the patch set on top of [PATCH v7 0/6] AMD Pstate Fixes
> And Enhancements
> > >>>>>   * update  [PATCH v7 2/6] to use MSR_K7_HWCR_CPB_DIS_BIT
> > >>>>>
> > >>>>> Changes from v3:
> > >>>>>   * rebased to linux-pm/bleeding-edge v6.8
> > >>>>>   * rename global to amd_pstate_global_params(Oleksandr
> Natalenko)
> > >>>>>   * remove comments for boot_supported in amd_pstate.h
> > >>>>>   * fix the compiler warning for amd-pstate-ut.ko
> > >>>>>   * use for_each_online_cpu in cpb_boost_store which fix the null
> pointer
> > >>>>>     error during testing
> > >>>>>   * fix the max frequency value to be KHz when cpb boost
> > >>>>> disabled(Gautham R. Shenoy)
> > >>>>>
> > >>>>> Changes from v2:
> > >>>>>   * move global struct to amd-pstate.h
> > >>>>>   * fix the amd-pstate-ut with new cpb control interface
> > >>>>>
> > >>>>> Changes from v1:
> > >>>>>   * drop suspend/resume fix patch 6/7 because of the fix should be
> in
> > >>>>>     another fix series instead of CPB feature
> > >>>>>   * move the set_boost remove patch to the last(Mario)
> > >>>>>   * Fix commit info with "Closes:" (Mario)
> > >>>>>   * simplified global.cpb_supported initialization(Mario)
> > >>>>>   * Add guide mode support for CPB control
> > >>>>>   * Fixed some Doc typos and add guide mode info to Doc as well.
> > >>>>>
> > >>>>> v1:
> > >>>>> https://lore.kernel.org/all/cover.1706255676.git.perry.yuan@amd.
> > >>>>> com/
> > >>>>> v2:
> > >>>>> https://lore.kernel.org/lkml/cover.1707047943.git.perry.yuan@amd
> > >>>>> .com/
> > >>>>> v3:
> > >>>>> https://lore.kernel.org/lkml/cover.1707297581.git.perry.yuan@amd
> > >>>>> .com/
> > >>>>> v4:
> > >>>>> https://lore.kernel.org/lkml/cover.1710322310.git.perry.yuan@amd
> > >>>>> .com/
> > >>>>> v5:
> > >>>>> https://lore.kernel.org/lkml/cover.1710473712.git.perry.yuan@amd
> > >>>>> .com/
> > >>>>> v6:
> > >>>>> https://lore.kernel.org/lkml/cover.1710754236.git.perry.yuan@amd
> > >>>>> .com/
> > >>>>> v7:
> > >>>>> https://lore.kernel.org/lkml/cover.1713861200.git.perry.yuan@amd
> > >>>>> .com/
> > >>>>> v8:
> > >>>>> https://lore.kernel.org/lkml/cover.1714112854.git.perry.yuan@amd
> > >>>>> .com/
> > >>>>> v9:
> > >>>>> https://lore.kernel.org/lkml/cover.1714989803.git.perry.yuan@amd
> > >>>>> .com/
> > >>>>>
> > >>>>> Perry Yuan (7):
> > >>>>>    cpufreq: acpi: move MSR_K7_HWCR_CPB_DIS_BIT into msr-
> index.h
> > >>>>>    cpufreq: amd-pstate: initialize new core precision boost state
> > >>>>>    cpufreq: amd-pstate: implement cpb_boost sysfs entry for boost
> control
> > >>>>>    cpufreq: amd-pstate: fix the MSR highest perf will be reset issue
> > >>>>>      while cpb boost off
> > >>>>>    Documentation: cpufreq: amd-pstate: introduce the new cpu
> boost
> > >>>>>      control method
> > >>>>>    cpufreq: amd-pstate: introduce per CPU frequency boost control
> > >>>>>    Documentation: cpufreq: amd-pstate: update doc for Per CPU
> boost
> > >>>>>      control method
> > >>>>>
> > >>>>>   Documentation/admin-guide/pm/amd-pstate.rst |  30 ++++
> > >>>>>   arch/x86/include/asm/msr-index.h            |   2 +
> > >>>>>   drivers/cpufreq/acpi-cpufreq.c              |   2 -
> > >>>>>   drivers/cpufreq/amd-pstate-ut.c             |   2 +-
> > >>>>>   drivers/cpufreq/amd-pstate.c                | 189
> ++++++++++++++++++--
> > >>>>>   include/linux/amd-pstate.h                  |  14 ++
> > >>>>>   6 files changed, 225 insertions(+), 14 deletions(-)
> > >>>>
> > >>>> I've applied this series along with fixes and improvements [1], and I
> cannot get guided mode to work with my CPU any more.
> > >>>>
> > >>>> The CPU is:
> > >>>>
> > >>>> ```
> > >>>> Vendor ID:                AuthenticAMD
> > >>>>    Model name:             AMD Ryzen 9 5950X 16-Core Processor
> > >>>>      CPU family:           25
> > >>>>      Model:                33
> > >>>>      Thread(s) per core:   2
> > >>>>      Core(s) per socket:   16
> > >>>>      Socket(s):            1
> > >>>>      Stepping:             2
> > >>>> ```
> > >>>>
> > >>>> I've got `amd_pstate=guided` set in the kernel cmdline, but `amd-
> pstate-epp` gets loaded anyway.
> > >>>
> > >>> OK, this part is solved like below:
> > >>>
> > >>> ```
> > >>> diff --git a/drivers/cpufreq/amd-pstate.c
> > >>> b/drivers/cpufreq/amd-pstate.c index aafa4466e5ced..5aee7d2b8cfd7
> > >>> 100644
> > >>> --- a/drivers/cpufreq/amd-pstate.c
> > >>> +++ b/drivers/cpufreq/amd-pstate.c
> > >>> @@ -66,7 +66,7 @@
> > >>>   static struct cpufreq_driver *current_pstate_driver;
> > >>>   static struct cpufreq_driver amd_pstate_driver;
> > >>>   static struct cpufreq_driver amd_pstate_epp_driver; -static int
> > >>> cppc_state;
> > >>> +static int cppc_state = CONFIG_X86_AMD_PSTATE_DEFAULT_MODE;
> > >>>   static bool cppc_enabled;
> > >>>   static bool amd_pstate_prefcore = true;
> > >>>   static struct quirk_entry *quirks; @@ -1958,10 +1958,6 @@ static
> > >>> int __init amd_pstate_init(void)
> > >>>         /* check if this machine need CPPC quirks */
> > >>>         dmi_check_system(amd_pstate_quirks_table);
> > >>>
> > >>> -       /* get default driver mode for loading*/
> > >>> -       cppc_state = CONFIG_X86_AMD_PSTATE_DEFAULT_MODE;
> > >>> -       pr_debug("cppc working state set to mode:%d\n", cppc_state);
> > >>> -
> > >>>         switch (cppc_state) {
> > >>>         case AMD_PSTATE_DISABLE:
> > >>>                 pr_info("driver load is disabled, boot with specific mode to
> > >>> enable this\n"); ```
> > >>>
> > >>> as we have discussed here [1].
> > >>>
> > >>> [1]
> > >>>
> https://lore.kernel.org/lkml/CYYPR12MB865554562BE018D46FF0108C9CE5
> > >>> 2@...PR12MB8655.namprd12.prod.outlook.com/
> > >>
> > >> Ah no, scratch it, it's not solved. With `amd_pstate=guided` the driver
> fails to register during the boottime with the same `sysfs` error:
> > >>
> > >> ```
> > >> kernel: sysfs: cannot create duplicate filename
> '/devices/system/cpu/cpufreq/policy0/boost'
> > >> kernel: Hardware name: ASUS System Product Name/Pro WS X570-ACE,
> > >> BIOS 4805 03/18/2024
> > >> kernel: Call Trace:
> > >> kernel:  <TASK>
> > >> kernel:  dump_stack_lvl+0x47/0x60
> > >> kernel:  sysfs_warn_dup+0x5a/0x70
> > >> kernel:  sysfs_create_file_ns+0x196/0x1b0
> > >> kernel:  cpufreq_online+0x244/0xde0
> > >> kernel:  cpufreq_add_dev+0x7b/0x90
> > >> kernel:  subsys_interface_register+0x19e/0x1d0
> > >> kernel:  cpufreq_register_driver+0x177/0x2f0
> > >> kernel:  amd_pstate_init+0x1b8/0x2c0
> > >> kernel:  do_one_initcall+0x5b/0x320
> > >> kernel:  kernel_init_freeable+0x1dc/0x380
> > >> kernel:  kernel_init+0x1a/0x1c0
> > >> kernel:  ret_from_fork+0x34/0x50
> > >> kernel:  ret_from_fork_asm+0x1b/0x30
> > >> kernel:  </TASK>
> > >> ```
> > >>
> > >> and things revert to `acpi_cpufreq` instead.
> > >>
> > >> What's wrong?
> > >
> > > This happens with both `amd_pstate=guided` and `amd_pstate=passive`,
> while with `amd_pstate=active` it works. Also note I've got:
> > >
> > > ```
> > > CONFIG_X86_AMD_PSTATE=y
> > > CONFIG_X86_AMD_PSTATE_DEFAULT_MODE=3
> > > ```
> > >
> > > aka "active" by default.
> > >
> > > It seems I miss to understand something in the init sequence.
> > >
> >
> > I think what's going on is that by reusing the same name as acpi_cppc
> > does for sysfs when amd pstate is changing modes the sysfs file from
> > amd-pstate isn't cleared and so acpi_cppc tries to make it.
>
> Seems so. I've renamed `amd_pstate`'s `boost` file to `amd_pstate_boost`,
> and now I'm able to boot with `amd_pstate=guided`, and after boot under
> `/sys/devices/system/cpu/cpufreq/policyX` I see both `boost` (from
> `acpi_cppc`, apparently) and `amd_pstate_boost` at the same time.
>
> Not sure the fact both files are present is as intended.
>
> >
> > Don't get me wrong - I do think that we should keep the same sysfs
> > name for both, it's easier for users.
> >
> > But if we're going to keep mode switching from amd-pstate at runtime
> > we really need to make sure that amd-pstate-ut explicitly tests all
> > these combinations to catch these types of problems.
>
> Not sure it's runtime switching only that is affected. I guess having
> `CONFIG_X86_AMD_PSTATE_DEFAULT_MODE` set to `active` and then
> having `amd_pstate=guided` on the kernel cmdline is not considered to be a
> runtime switching (or is it?), yet it doesn't work either due to filename
> conflict.
>
> > >>
> > >>>
> > >>> But this part:
> > >>>
> > >>>> When I try to set `guided` manually via `echo guided | sudo tee
> /sys/devices/system/cpu/amd_pstate/status`, the status gets dropped to
> `disable`, `tee` errors out with `-ENODEV`, and there's this in the kernel log:
> > >>>>
> > >>>> ```
> > >>>> $ jctl -kb | grep sysfs: | cut -d ' ' -f 5-
> > >>>> kernel: sysfs: cannot create duplicate filename
> '/devices/system/cpu/cpufreq/policy0/boost'
> > >>>> …
> > >>>> kernel: sysfs: cannot create duplicate filename
> '/devices/system/cpu/cpufreq/policy31/boost'
> > >>>> ```
> > >>>
> > >>> is not. I've successfully booted with `amd_pstate=guided`, then did
> this:
> > >>>
> > >>> ```
> > >>> $ echo active | sudo tee /sys/devices/system/cpu/amd_pstate/status
> > >>> ```
> > >>>
> > >>> just for the sake of test, and got this:
> > >>>
> > >>> ```
> > >>> tee: /sys/devices/system/cpu/amd_pstate/status: File exists ```
> > >>>
> > >>> and this:
> > >>>
> > >>> ```
> > >>> kernel: WARNING: CPU: 9 PID: 8528 at
> > >>> drivers/cpufreq/cpufreq.c:2961 cpufreq_unregister_driver+0x1a/0xc0
> > >>> ```
> > >>>
> > >>> which corresponds to:
> > >>>
> > >>> ```
> > >>> 2957 void cpufreq_unregister_driver(struct cpufreq_driver *driver)
> > >>> 2958 {
> > >>> 2959         unsigned long flags;
> > >>> 2960
> > >>> 2961         if (WARN_ON(!cpufreq_driver || (driver != cpufreq_driver)))
> > >>> 2962                 return;
> > >>> ```
> > >>>
> > >>> I haven't conducted this test before, so I don't know whether this
> behaviour is new, or it was present in older iterations. I also don't know if this
> belongs to the "boost" series or the "fixes", and just letting you know so that
> you can test the runtime switching yourself and see if it is reproducible in
> your environment as well or not.
> > >>>
> > >>>> The following is applied on top of v6.9-rc7:
> > >>>>
> > >>>> ```
> > >>>> cpufreq: amd-pstate: automatically load pstate driver by default
> > >>>> cpufreq: amd-pstate: fix the highest frequency issue which limit
> > >>>> performance
> > >>>> cpufreq: amd-pstate: implement heterogeneous core topology for
> > >>>> highest performance initialization
> > >>>> x86/cpufeatures: Add feature bits for AMD heterogeneous processor
> > >>>> cpufreq: amd-pstate: switch boot_cpu_has() to
> > >>>> cpu_feature_enabled()
> > >>>> Documentation: PM: amd-pstate: add guide mode to the Operation
> > >>>> mode
> > >>>> Documentation: PM: amd-pstate: add debugging section for driver
> > >>>> loading failure
> > >>>> Documentation: PM: amd-pstate: introducing recommended reboot
> > >>>> requirement during driver switch
> > >>>> cpufreq: amd-pstate: add debug message while CPPC is supported
> > >>>> and disabled by SBIOS
> > >>>> cpufreq: amd-pstate: show CPPC debug message if CPPC is not
> > >>>> supported
> > >>>> cpufreq: amd-pstate: optimiza the initial frequency values
> > >>>> verification
> > >>>> Documentation: cpufreq: amd-pstate: update doc for Per CPU boost
> > >>>> control method
> > >>>> cpufreq: amd-pstate: introduce per CPU frequency boost control
> > >>>> Documentation: cpufreq: amd-pstate: introduce the new cpu boost
> > >>>> control method
> > >>>> cpufreq: amd-pstate: fix the MSR highest perf will be reset issue
> > >>>> while cpb boost off
> > >>>> cpufreq: amd-pstate: implement cpb_boost sysfs entry for boost
> > >>>> control
> > >>>> cpufreq: amd-pstate: initialize new core precision boost state
> > >>>> cpufreq: acpi: move MSR_K7_HWCR_CPB_DIS_BIT into msr-index.h
> > >>>> cpufreq: amd-pstate: remove unused variable
> lowest_nonlinear_freq
> > >>>> cpufreq: amd-pstate: fix code format problems
> > >>>> cpufreq: amd-pstate: Add quirk for the pstate CPPC capabilities
> > >>>> missing
> > >>>> cpufreq: amd-pstate: get transition delay and latency value from
> > >>>> ACPI tables
> > >>>> cpufreq: amd-pstate: Bail out if min/max/nominal_freq is 0
> > >>>> cpufreq: amd-pstate: Remove
> > >>>> amd_get_{min,max,nominal,lowest_nonlinear}_freq()
> > >>>> cpufreq: amd-pstate: Unify computation of
> > >>>> {max,min,nominal,lowest_nonlinear}_freq
> > >>>> cpufreq: amd-pstate: Document the units for freq variables in
> > >>>> amd_cpudata
> > >>>> cpufreq: amd-pstate: Document *_limit_* fields in struct
> > >>>> amd_cpudata ```
> > >>>>
> > >>>> Previously, with your submissions, it was possible to use `guided`
> mode with my Zen 3.
> > >>>>
> > >>>> [1]
> > >>>> https://lore.kernel.org/lkml/cover.1715065568.git.perry.yuan@amd.
> > >>>> com/
> > >>>>
> > >>>>
> > >>>
> > >>>
> > >>>
> > >>
> > >>
> > >>
> > >
> > >
> >
> >
>
>
> --
> Oleksandr Natalenko (post-factum)

I have known the issue detail, will fix it to allow kernel command input like before.

Perry.


Powered by blists - more mailing lists

Powered by Openwall GNU/*/Linux Powered by OpenVZ