Re: [PATCH v2] acpi/processor: sanitize _PDC buffer bits when running as Xen dom0

From: kernel test robot
Date: Wed Sep 06 2023 - 19:10:22 EST


Hi Jason,

kernel test robot noticed the following build errors:

[auto build test ERROR on tip/x86/core]
[also build test ERROR on v6.5]
[cannot apply to rafael-pm/linux-next linus/master next-20230906]
[If your patch is applied to the wrong git tree, kindly drop us a note.
And when submitting patch, we suggest to use '--base' as documented in
https://git-scm.com/docs/git-format-patch#_base_tree_information]

url: https://github.com/intel-lab-lkp/linux/commits/Jason-Andryuk/acpi-processor-sanitize-_PDC-buffer-bits-when-running-as-Xen-dom0/20230907-022235
base: tip/x86/core
patch link: https://lore.kernel.org/r/20230906182125.48642-1-jandryuk%40gmail.com
patch subject: [PATCH v2] acpi/processor: sanitize _PDC buffer bits when running as Xen dom0
config: x86_64-randconfig-r011-20230907 (https://download.01.org/0day-ci/archive/20230907/202309070625.dJUDcGZg-lkp@xxxxxxxxx/config)
compiler: gcc-12 (Debian 12.2.0-14) 12.2.0
reproduce (this is a W=1 build): (https://download.01.org/0day-ci/archive/20230907/202309070625.dJUDcGZg-lkp@xxxxxxxxx/reproduce)

If you fix the issue in a separate patch/commit (i.e. not just a new version of
the same patch/commit), kindly add following tags
| Reported-by: kernel test robot <lkp@xxxxxxxxx>
| Closes: https://lore.kernel.org/oe-kbuild-all/202309070625.dJUDcGZg-lkp@xxxxxxxxx/

All errors (new ones prefixed by >>):

drivers/acpi/processor_pdc.c: In function 'acpi_processor_eval_pdc':
>> drivers/acpi/processor_pdc.c:147:17: error: implicit declaration of function 'xen_sanitize_pdc' [-Werror=implicit-function-declaration]
147 | xen_sanitize_pdc(buffer);
| ^~~~~~~~~~~~~~~~
cc1: some warnings being treated as errors


vim +/xen_sanitize_pdc +147 drivers/acpi/processor_pdc.c

116
117 /*
118 * _PDC is required for a BIOS-OS handshake for most of the newer
119 * ACPI processor features.
120 */
121 static acpi_status
122 acpi_processor_eval_pdc(acpi_handle handle, struct acpi_object_list *pdc_in)
123 {
124 acpi_status status = AE_OK;
125 union acpi_object *obj;
126 u32 *buffer = NULL;
127
128 obj = pdc_in->pointer;
129 buffer = (u32 *)(obj->buffer.pointer);
130
131 if (boot_option_idle_override == IDLE_NOMWAIT) {
132 /*
133 * If mwait is disabled for CPU C-states, the C2C3_FFH access
134 * mode will be disabled in the parameter of _PDC object.
135 * Of course C1_FFH access mode will also be disabled.
136 */
137 buffer[2] &= ~(ACPI_PDC_C_C2C3_FFH | ACPI_PDC_C_C1_FFH);
138 }
139
140 if (xen_initial_domain()) {
141 /*
142 * When Linux is running as Xen dom0, the hypervisor is the
143 * entity in charge of the processor power management, and so
144 * Xen needs to check the OS capabilities reported in the _PDC
145 * buffer matches what the hypervisor driver supports.
146 */
> 147 xen_sanitize_pdc(buffer);
148 }
149
150 status = acpi_evaluate_object(handle, "_PDC", pdc_in, NULL);
151
152 if (ACPI_FAILURE(status))
153 acpi_handle_debug(handle,
154 "Could not evaluate _PDC, using legacy perf control\n");
155
156 return status;
157 }
158

--
0-DAY CI Kernel Test Service
https://github.com/intel/lkp-tests/wiki