
tree: https://gitee.com/openeuler/kernel.git OLK-5.10 head: e4755f6a2b98f251edcf63f98f416b5d76425f8c commit: e217d5958ee378eb304fb0b4eb6fcb551e555842 [2999/2999] cpufreq: intel_pstate: Process HWP Guaranteed change notification config: x86_64-buildonly-randconfig-2002-20250702 (https://download.01.org/0day-ci/archive/20250702/202507021524.3Cm8FJyF-lkp@i...) compiler: gcc-12 (Debian 12.2.0-14+deb12u1) 12.2.0 reproduce (this is a W=1 build): (https://download.01.org/0day-ci/archive/20250702/202507021524.3Cm8FJyF-lkp@i...) 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@intel.com> | Closes: https://lore.kernel.org/oe-kbuild-all/202507021524.3Cm8FJyF-lkp@intel.com/ All warnings (new ones prefixed by >>):
drivers/cpufreq/intel_pstate.c:1473:6: warning: no previous prototype for 'notify_hwp_interrupt' [-Wmissing-prototypes] 1473 | void notify_hwp_interrupt(void) | ^~~~~~~~~~~~~~~~~~~~ drivers/cpufreq/intel_pstate.c:2195:32: warning: 'intel_pstate_cpu_oob_ids' defined but not used [-Wunused-const-variable=] 2195 | static const struct x86_cpu_id intel_pstate_cpu_oob_ids[] __initconst = { | ^~~~~~~~~~~~~~~~~~~~~~~~
vim +/notify_hwp_interrupt +1473 drivers/cpufreq/intel_pstate.c 1472
1473 void notify_hwp_interrupt(void) 1474 { 1475 unsigned int this_cpu = smp_processor_id(); 1476 struct cpudata *cpudata; 1477 unsigned long flags; 1478 u64 value; 1479 1480 if (!READ_ONCE(hwp_active) || !boot_cpu_has(X86_FEATURE_HWP_NOTIFY)) 1481 return; 1482 1483 rdmsrl_safe(MSR_HWP_STATUS, &value); 1484 if (!(value & 0x01)) 1485 return; 1486 1487 spin_lock_irqsave(&hwp_notify_lock, flags); 1488 1489 if (!cpumask_test_cpu(this_cpu, &hwp_intr_enable_mask)) 1490 goto ack_intr; 1491 1492 /* 1493 * Currently we never free all_cpu_data. And we can't reach here 1494 * without this allocated. But for safety for future changes, added 1495 * check. 1496 */ 1497 if (unlikely(!READ_ONCE(all_cpu_data))) 1498 goto ack_intr; 1499 1500 /* 1501 * The free is done during cleanup, when cpufreq registry is failed. 1502 * We wouldn't be here if it fails on init or switch status. But for 1503 * future changes, added check. 1504 */ 1505 cpudata = READ_ONCE(all_cpu_data[this_cpu]); 1506 if (unlikely(!cpudata)) 1507 goto ack_intr; 1508 1509 schedule_delayed_work(&cpudata->hwp_notify_work, msecs_to_jiffies(10)); 1510 1511 spin_unlock_irqrestore(&hwp_notify_lock, flags); 1512 1513 return; 1514 1515 ack_intr: 1516 wrmsrl_safe(MSR_HWP_STATUS, 0); 1517 spin_unlock_irqrestore(&hwp_notify_lock, flags); 1518 } 1519
-- 0-DAY CI Kernel Test Service https://github.com/intel/lkp-tests/wiki