Re: [PATCH 1/2] intel_idle: Introduce 'use_acpi' module parameter

From: kbuild test robot
Date: Sun Feb 02 2020 - 09:24:26 EST


Hi "Rafael,

I love your patch! Yet something to improve:

[auto build test ERROR on linus/master]
[also build test ERROR on next-20200130]
[cannot apply to acpi/next linux/master v5.5]
[if your patch is applied to the wrong git tree, please drop us a note to help
improve the system. BTW, we also suggest to use '--base' option to specify the
base tree in git format-patch, please see https://stackoverflow.com/a/37406982]

url: https://github.com/0day-ci/linux/commits/Rafael-J-Wysocki/intel_idle-Two-new-module-parameters/20200202-161814
base: https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git 94f2630b18975bb56eee5d1a36371db967643479
config: i386-randconfig-a001-20200202 (attached as .config)
compiler: gcc-6 (Debian 6.3.0-18+deb9u1) 6.3.0 20170516
reproduce:
# save the attached .config to linux build tree
make ARCH=i386

If you fix the issue, kindly add following tag
Reported-by: kbuild test robot <lkp@xxxxxxxxx>

All error/warnings (new ones prefixed by >>):

drivers//idle/intel_idle.c: In function 'intel_idle_init_cstates_icpu':
>> drivers//idle/intel_idle.c:1265:18: error: expected identifier before '(' token
#define use_acpi (false)
^
>> drivers//idle/intel_idle.c:1469:14: note: in expansion of macro 'use_acpi'
if ((icpu->use_acpi || use_acpi) &&
^~~~~~~~
drivers//idle/intel_idle.c: In function 'intel_idle_init':
>> drivers//idle/intel_idle.c:1265:18: error: expected identifier before '(' token
#define use_acpi (false)
^
drivers//idle/intel_idle.c:1617:13: note: in expansion of macro 'use_acpi'
if (icpu->use_acpi || use_acpi)
^~~~~~~~

vim +/use_acpi +1469 drivers//idle/intel_idle.c

1427
1428 static void __init intel_idle_init_cstates_icpu(struct cpuidle_driver *drv)
1429 {
1430 int cstate;
1431
1432 switch (boot_cpu_data.x86_model) {
1433 case INTEL_FAM6_IVYBRIDGE_X:
1434 ivt_idle_state_table_update();
1435 break;
1436 case INTEL_FAM6_ATOM_GOLDMONT:
1437 case INTEL_FAM6_ATOM_GOLDMONT_PLUS:
1438 bxt_idle_state_table_update();
1439 break;
1440 case INTEL_FAM6_SKYLAKE:
1441 sklh_idle_state_table_update();
1442 break;
1443 }
1444
1445 for (cstate = 0; cstate < CPUIDLE_STATE_MAX; ++cstate) {
1446 unsigned int mwait_hint;
1447
1448 if (intel_idle_max_cstate_reached(cstate))
1449 break;
1450
1451 if (!cpuidle_state_table[cstate].enter &&
1452 !cpuidle_state_table[cstate].enter_s2idle)
1453 break;
1454
1455 /* If marked as unusable, skip this state. */
1456 if (cpuidle_state_table[cstate].flags & CPUIDLE_FLAG_UNUSABLE) {
1457 pr_debug("state %s is disabled\n",
1458 cpuidle_state_table[cstate].name);
1459 continue;
1460 }
1461
1462 mwait_hint = flg2MWAIT(cpuidle_state_table[cstate].flags);
1463 if (!intel_idle_verify_cstate(mwait_hint))
1464 continue;
1465
1466 /* Structure copy. */
1467 drv->states[drv->state_count] = cpuidle_state_table[cstate];
1468
> 1469 if ((icpu->use_acpi || use_acpi) &&
1470 intel_idle_off_by_default(mwait_hint) &&
1471 !(cpuidle_state_table[cstate].flags & CPUIDLE_FLAG_ALWAYS_ENABLE))
1472 drv->states[drv->state_count].flags |= CPUIDLE_FLAG_OFF;
1473
1474 drv->state_count++;
1475 }
1476
1477 if (icpu->byt_auto_demotion_disable_flag) {
1478 wrmsrl(MSR_CC6_DEMOTION_POLICY_CONFIG, 0);
1479 wrmsrl(MSR_MC6_DEMOTION_POLICY_CONFIG, 0);
1480 }
1481 }
1482

---
0-DAY kernel test infrastructure Open Source Technology Center
https://lists.01.org/hyperkitty/list/kbuild-all@xxxxxxxxxxxx Intel Corporation

Attachment: .config.gz
Description: application/gzip