Re: Warnings `Could not retrieve perf counters (-19)` and `amd_pstate: the _CPC object is not present in SBIOS or ACPI disabled` (Dell PowerEdge R7625, AMD EPYC 9174F)

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



On 2/11/2025 10:12, Paul Menzel wrote:
Dear Linux folks,


Am 28.01.25 um 16:08 schrieb Paul Menzel:
[Cc: +x86 maintainers and ACPI list]

Am 28.01.25 um 11:49 schrieb Paul Menzel:

Thank you for your quick replies. Gautham, messages with HTML are rejected by Linux kernel lists.


Am 28.01.25 um 04:51 schrieb Shenoy, Gautham Ranjal:

As Mario mentioned, you need to enable the CPPC option. Looking for some of the Dell PowerEdge documentation, there is an option called "Collaborative CPU Performance Control" (https://www.dell.com/ support/manuals/en-in/poweredge-r730/r730_ompublication/system- profile-settings-details?guid=guid-2e9b46a1-71e3-4072-9d86- db648757f0e6&lang=en-us).

[cid:fe57df8f-3d99-4ea0-8f6e-b0daae49bb0e]
Can you please try enabling it ?

You quoted the Dell PowerEdge R730. I couldn’t find it in the *Dell PowerEdge R7625 Installation and Service Manual* [1], and also it’s not listed in the iDRAC9 Web site (attached with added `.txt` extension to trick the Linux list).

The amd_pstate warning seems to be related to the perf counters warning Linux prints earlier:

     $ dmesg --level alert,crit,err,warn
     [    2.666393] Spectre V2 : WARNING: Unprivileged eBPF is enabled with eIBRS on, data leaks possible via Spectre v2 BHB attacks!
     [    8.109446] Could not retrieve perf counters (-19)
     [    9.386551] scsi 0:0:4:0: set ignore_delay_remove for handle(0x0012)      [    9.487804] amd_pstate: the _CPC object is not present in SBIOS or ACPI disabled      [   14.726193] wmi_bus wmi_bus-PNP0C14:00: [Firmware Bug]: WQBC data block query control method not found

x86 maintainers, the original report with the Linux logs attached is in the archive [3].

It looks like, there is something missing in the Dell firmware to enable the feature.

The perf counters warning is from `amd_set_max_freq_ratio()` in `arch/ x86/kernel/acpi/cppc.c`:

```
static void amd_set_max_freq_ratio(void)
{
         struct cppc_perf_caps perf_caps;
         u64 numerator, nominal_perf;
         u64 perf_ratio;
         int rc;

         rc = cppc_get_perf_caps(0, &perf_caps);
         if (rc) {
                 pr_warn("Could not retrieve perf counters (%d)\n", rc);
                 return;
         }
         […]
}
```

With

     include/uapi/asm-generic/errno-base.h:#define    ENODEV 19    /* No such device */

this is returned by in `drivers/acpi/cppc_acpi.c`:

```
/**
  * cppc_get_perf_caps - Get a CPU's performance capabilities.
  * @cpunum: CPU from which to get capabilities info.
  * @perf_caps: ptr to cppc_perf_caps. See cppc_acpi.h
  *
  * Return: 0 for success with perf_caps populated else -ERRNO.
  */
int cppc_get_perf_caps(int cpunum, struct cppc_perf_caps *perf_caps)
{
         struct cpc_desc *cpc_desc = per_cpu(cpc_desc_ptr, cpunum);
         […]
         if (!cpc_desc) {
                 pr_debug("No CPC descriptor for CPU:%d\n", cpunum);
                 return -ENODEV;
         }
         […]
}
```

@AMD folks, just for clarity. Did Dell something with their firmware? If so, are you going to work with Dell on a solution, or do I need to report the issue to them?


I feel if there is a BIOS bug in hardware you purchased, you should report a bug to the hardware creator for them to fix.





[Index of Archives]     [Linux IBM ACPI]     [Linux Power Management]     [Linux Kernel]     [Linux Laptop]     [Kernel Newbies]     [Share Photos]     [Security]     [Netfilter]     [Bugtraq]     [Yosemite News]     [MIPS Linux]     [ARM Linux]     [Linux Security]     [Linux RAID]     [Samba]     [Video 4 Linux]     [Device Mapper]     [Linux Resources]
  Powered by Linux