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

Re: [PATCH v3] x86/cpufreq: Add Kconfig option for CPU frequency scaling


  • To: Stefano Stabellini <stefano.stabellini@xxxxxxx>, xen-devel@xxxxxxxxxxxxxxxxxxxx
  • From: Andrew Cooper <andrew.cooper3@xxxxxxxxxx>
  • Date: Fri, 13 Feb 2026 23:29:06 +0000
  • Arc-authentication-results: i=1; mx.microsoft.com 1; spf=pass smtp.mailfrom=citrix.com; dmarc=pass action=none header.from=citrix.com; dkim=pass header.d=citrix.com; arc=none
  • Arc-message-signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector10001; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1; bh=/g+F66yAnqm+rTToTy7w1e4leW9teOXDS7vODxbAYhk=; b=y+XDAHco6m9ydkNfXcRqCeqgiUfrMFBHZ02fOTppKfiLG6tanEUrU9lppOHU62FX8KmYelBRHUcq6BsAvTe0rgrZo+m2uJBivg15+v8YO3tfUCfLP8u8csCHCryXL9jfN9k2JDaVHDDTLAFzi/QgjAvawjXMxDV75cScqqCWnw9mJp7eXw/R89umUmkirjHQsAEvek0wgcgz7u5BLJhTj64810K3Z1ClG3ieXoFSFTNAYO85bNUhxkItxibsCuELQqubGAsZfV/SxEBX33r8SlqsPOTdkkMIY2BwkkgUByQPdwzzaNivrZ17sCz/uB40VKXmpnasARM50UPEmNGeZA==
  • Arc-seal: i=1; a=rsa-sha256; s=arcselector10001; d=microsoft.com; cv=none; b=PXw/900nEtowcLbbt1XYxyb8IEcm66CPYNCi1NWXD55l/zwlfAN+zWlZS2xz0h7XxJ/VTvhqMtdynA2kccm6pEcjfd/BQLp9ARK3MX+e/NrJMLgdqULTDK0rDBALv2qcIAXHR1P2rF1IGHzBgPKYYopCqtVXVo2bON0+/UBOp89pyr0fFc/OKqHruTzCjbWM8B+0t9UbAm7bH7ihLz7PmcTwOwoCU/POK+2TSKKfACd7Jgax+4ZS3kmCG5DHA+i2K7sBSsqd5R9efRITHI75nyt8BSLm6c3DuZ+jHq0azDWUQwpipM/QvCXDqe7DB2DTLxkvy8zGuAIXmSzIAzEe0A==
  • Authentication-results: dkim=none (message not signed) header.d=none;dmarc=none action=none header.from=citrix.com;
  • Cc: Andrew Cooper <andrew.cooper3@xxxxxxxxxx>, jbeulich@xxxxxxxx, roger.pau@xxxxxxxxxx, jason.andryuk@xxxxxxx, alejandro.garciavallejo@xxxxxxx
  • Delivery-date: Fri, 13 Feb 2026 23:29:25 +0000
  • List-id: Xen developer discussion <xen-devel.lists.xenproject.org>

On 13/02/2026 10:28 pm, Stefano Stabellini wrote:
> diff --git a/xen/arch/x86/platform_hypercall.c 
> b/xen/arch/x86/platform_hypercall.c
> index c6c5135806..a4669090e0 100644
> --- a/xen/arch/x86/platform_hypercall.c
> +++ b/xen/arch/x86/platform_hypercall.c
> @@ -485,6 +485,7 @@ ret_t do_platform_op(
>          ret = acpi_enter_sleep(&op->u.enter_acpi_sleep);
>          break;
>  
> +#ifdef CONFIG_CPUFREQ
>      case XENPF_change_freq:
>          ret = -ENOSYS;
>          if ( cpufreq_controller != FREQCTL_dom0_kernel )
> @@ -544,6 +545,7 @@ ret_t do_platform_op(
>              ret = -EFAULT;
>          break;
>      }
> +#endif

You must not hide case labels like this.  Instead, use:

    case XENPF_change_freq:
        ret = -ENOSYS;
        if ( !IS_ENABLED(CONFIG_CPUFREQ) )
            break;
        ...

which in turn ...

>  
>      case XENPF_set_processor_pminfo:
>          switch ( op->u.set_pminfo.type )
> @@ -936,7 +938,7 @@ ret_t do_platform_op(
>          break;
>      }
>  
> - out:
> + out: __maybe_unused;
>      spin_unlock(&xenpf_lock);

... removes the need for this hunk.

> diff --git a/xen/drivers/acpi/pm-op.c b/xen/drivers/acpi/pm-op.c
> index 07bddc58d9..f5caeebb9a 100644
> --- a/xen/drivers/acpi/pm-op.c
> +++ b/xen/drivers/acpi/pm-op.c
> @@ -367,7 +367,8 @@ int do_pm_op(struct xen_sysctl_pm_op *op)
>          return ret;
>      }
>  
> -    if ( op->cpuid >= nr_cpu_ids || !cpu_online(op->cpuid) )
> +    if ( op->cpuid >= nr_cpu_ids || !cpu_online(op->cpuid) ||
> +         !IS_ENABLED(CPUFREQ) )

Everywhere else in this patch, CONFIG_CPUFREQ.

You won't get a compile error for typo-ing a name inside IF_ENABLED(),
but it won't function correctly either.

~Andrew



 


Rackspace

Lists.xenproject.org is hosted with RackSpace, monitoring our
servers 24x7x365 and backed by RackSpace's Fanatical Support®.