[<prev] [next>] [day] [month] [year] [list]
Message-ID: <202203090713.yqIkOA2s-lkp@intel.com>
Date: Wed, 9 Mar 2022 07:41:06 +0800
From: kernel test robot <lkp@...el.com>
To: Saravana Kannan <skannan@...eaurora.org>
Cc: kbuild-all@...ts.01.org, linux-kernel@...r.kernel.org,
Chanwoo Choi <cw00.choi@...sung.com>,
Sibi Sankar <sibis@...eaurora.org>
Subject: [chanwoo:devfreq-testing 2/4] include/linux/devfreq.h:332:1:
warning: no semicolon at end of struct or union
tree: https://git.kernel.org/pub/scm/linux/kernel/git/chanwoo/linux.git devfreq-testing
head: 3439b6e7ff5704e4f812af746da9f06a6403d796
commit: ae763e5ef1bcfccbf95119180ee716637b7bb353 [2/4] PM / devfreq: Add cpu based scaling support to passive governor
config: um-allmodconfig (https://download.01.org/0day-ci/archive/20220309/202203090713.yqIkOA2s-lkp@intel.com/config)
compiler: gcc-9 (Debian 9.3.0-22) 9.3.0
reproduce (this is a W=1 build):
# https://git.kernel.org/pub/scm/linux/kernel/git/chanwoo/linux.git/commit/?id=ae763e5ef1bcfccbf95119180ee716637b7bb353
git remote add chanwoo https://git.kernel.org/pub/scm/linux/kernel/git/chanwoo/linux.git
git fetch --no-tags chanwoo devfreq-testing
git checkout ae763e5ef1bcfccbf95119180ee716637b7bb353
# save the config file to linux build tree
mkdir build_dir
make W=1 O=build_dir ARCH=um SHELL=/bin/bash drivers/devfreq/ drivers/gpu/drm/msm/
If you fix the issue, kindly add following tag as appropriate
Reported-by: kernel test robot <lkp@...el.com>
All error/warnings (new ones prefixed by >>):
In file included from arch/x86/um/asm/processor.h:41,
from include/linux/spinlock_up.h:8,
from include/linux/spinlock.h:95,
from include/linux/kref.h:16,
from include/linux/mm_types.h:8,
from include/linux/buildid.h:5,
from include/linux/module.h:14,
from drivers/devfreq/governor_simpleondemand.c:10:
>> arch/um/include/asm/processor-generic.h:103:19: error: expected identifier or '(' before '&' token
103 | #define cpu_data (&boot_cpu_data)
| ^
include/linux/devfreq.h:331:27: note: in expansion of macro 'cpu_data'
331 | struct devfreq_cpu_data *cpu_data[NR_CPUS];
| ^~~~~~~~
In file included from drivers/devfreq/governor_simpleondemand.c:11:
>> include/linux/devfreq.h:332:1: warning: no semicolon at end of struct or union
332 | };
| ^
--
In file included from arch/x86/um/asm/processor.h:41,
from include/linux/spinlock_up.h:8,
from include/linux/spinlock.h:95,
from include/linux/kref.h:16,
from include/linux/mm_types.h:8,
from include/linux/buildid.h:5,
from include/linux/module.h:14,
from drivers/devfreq/governor_passive.c:10:
>> arch/um/include/asm/processor-generic.h:103:19: error: expected identifier or '(' before '&' token
103 | #define cpu_data (&boot_cpu_data)
| ^
include/linux/devfreq.h:331:27: note: in expansion of macro 'cpu_data'
331 | struct devfreq_cpu_data *cpu_data[NR_CPUS];
| ^~~~~~~~
In file included from drivers/devfreq/governor_passive.c:16:
>> include/linux/devfreq.h:332:1: warning: no semicolon at end of struct or union
332 | };
| ^
In file included from arch/x86/um/asm/processor.h:41,
from include/linux/spinlock_up.h:8,
from include/linux/spinlock.h:95,
from include/linux/kref.h:16,
from include/linux/mm_types.h:8,
from include/linux/buildid.h:5,
from include/linux/module.h:14,
from drivers/devfreq/governor_passive.c:10:
drivers/devfreq/governor_passive.c: In function 'get_target_freq_with_cpufreq':
>> arch/um/include/asm/processor-generic.h:103:18: error: expected identifier before '(' token
103 | #define cpu_data (&boot_cpu_data)
| ^
drivers/devfreq/governor_passive.c:58:29: note: in expansion of macro 'cpu_data'
58 | parent_cpu_data = p_data->cpu_data[cpu];
| ^~~~~~~~
>> drivers/devfreq/governor_passive.c:50:31: warning: variable 'p_data' set but not used [-Wunused-but-set-variable]
50 | struct devfreq_passive_data *p_data =
| ^~~~~~
In file included from arch/x86/um/asm/processor.h:41,
from include/linux/spinlock_up.h:8,
from include/linux/spinlock.h:95,
from include/linux/kref.h:16,
from include/linux/mm_types.h:8,
from include/linux/buildid.h:5,
from include/linux/module.h:14,
from drivers/devfreq/governor_passive.c:10:
drivers/devfreq/governor_passive.c: In function 'cpufreq_passive_notifier_call':
>> arch/um/include/asm/processor-generic.h:103:18: error: expected identifier before '(' token
103 | #define cpu_data (&boot_cpu_data)
| ^
drivers/devfreq/governor_passive.c:221:10: note: in expansion of macro 'cpu_data'
221 | !data->cpu_data[freqs->policy->cpu])
| ^~~~~~~~
>> arch/um/include/asm/processor-generic.h:103:18: error: expected identifier before '(' token
103 | #define cpu_data (&boot_cpu_data)
| ^
drivers/devfreq/governor_passive.c:224:26: note: in expansion of macro 'cpu_data'
224 | parent_cpu_data = data->cpu_data[freqs->policy->cpu];
| ^~~~~~~~
drivers/devfreq/governor_passive.c: In function 'cpufreq_passive_unregister_notifier':
>> arch/um/include/asm/processor-generic.h:103:18: error: expected identifier before '(' token
103 | #define cpu_data (&boot_cpu_data)
| ^
drivers/devfreq/governor_passive.c:258:29: note: in expansion of macro 'cpu_data'
258 | parent_cpu_data = p_data->cpu_data[cpu];
| ^~~~~~~~
drivers/devfreq/governor_passive.c: In function 'cpufreq_passive_register_notifier':
>> arch/um/include/asm/processor-generic.h:103:18: error: expected identifier before '(' token
103 | #define cpu_data (&boot_cpu_data)
| ^
drivers/devfreq/governor_passive.c:291:15: note: in expansion of macro 'cpu_data'
291 | if (p_data->cpu_data[cpu])
| ^~~~~~~~
>> arch/um/include/asm/processor-generic.h:103:18: error: expected identifier before '(' token
103 | #define cpu_data (&boot_cpu_data)
| ^
drivers/devfreq/governor_passive.c:331:11: note: in expansion of macro 'cpu_data'
331 | p_data->cpu_data[cpu] = parent_cpu_data;
| ^~~~~~~~
vim +332 include/linux/devfreq.h
ae763e5ef1bcfcc Saravana Kannan 2021-03-02 296
996133119f57334 Chanwoo Choi 2016-03-22 297 /**
7a51320ecd39420 Mauro Carvalho Chehab 2020-03-17 298 * struct devfreq_passive_data - ``void *data`` fed to struct devfreq
996133119f57334 Chanwoo Choi 2016-03-22 299 * and devfreq_add_device
996133119f57334 Chanwoo Choi 2016-03-22 300 * @parent: the devfreq instance of parent device.
996133119f57334 Chanwoo Choi 2016-03-22 301 * @get_target_freq: Optional callback, Returns desired operating frequency
996133119f57334 Chanwoo Choi 2016-03-22 302 * for the device using passive governor. That is called
996133119f57334 Chanwoo Choi 2016-03-22 303 * when passive governor should decide the next frequency
996133119f57334 Chanwoo Choi 2016-03-22 304 * by using the new frequency of parent devfreq device
996133119f57334 Chanwoo Choi 2016-03-22 305 * using governors except for passive governor.
996133119f57334 Chanwoo Choi 2016-03-22 306 * If the devfreq device has the specific method to decide
996133119f57334 Chanwoo Choi 2016-03-22 307 * the next frequency, should use this callback.
ae763e5ef1bcfcc Saravana Kannan 2021-03-02 308 + * @parent_type parent type of the device
ae763e5ef1bcfcc Saravana Kannan 2021-03-02 309 + * @this: the devfreq instance of own device.
ae763e5ef1bcfcc Saravana Kannan 2021-03-02 310 + * @nb: the notifier block for DEVFREQ_TRANSITION_NOTIFIER list
ae763e5ef1bcfcc Saravana Kannan 2021-03-02 311 + * @cpu_data: the state min/max/current frequency of all online cpu's
996133119f57334 Chanwoo Choi 2016-03-22 312 *
996133119f57334 Chanwoo Choi 2016-03-22 313 * The devfreq_passive_data have to set the devfreq instance of parent
996133119f57334 Chanwoo Choi 2016-03-22 314 * device with governors except for the passive governor. But, don't need to
996133119f57334 Chanwoo Choi 2016-03-22 315 * initialize the 'this' and 'nb' field because the devfreq core will handle
996133119f57334 Chanwoo Choi 2016-03-22 316 * them.
996133119f57334 Chanwoo Choi 2016-03-22 317 */
996133119f57334 Chanwoo Choi 2016-03-22 318 struct devfreq_passive_data {
996133119f57334 Chanwoo Choi 2016-03-22 319 /* Should set the devfreq instance of parent device */
996133119f57334 Chanwoo Choi 2016-03-22 320 struct devfreq *parent;
996133119f57334 Chanwoo Choi 2016-03-22 321
996133119f57334 Chanwoo Choi 2016-03-22 322 /* Optional callback to decide the next frequency of passvice device */
996133119f57334 Chanwoo Choi 2016-03-22 323 int (*get_target_freq)(struct devfreq *this, unsigned long *freq);
996133119f57334 Chanwoo Choi 2016-03-22 324
ae763e5ef1bcfcc Saravana Kannan 2021-03-02 325 /* Should set the type of parent device */
ae763e5ef1bcfcc Saravana Kannan 2021-03-02 326 enum devfreq_parent_dev_type parent_type;
ae763e5ef1bcfcc Saravana Kannan 2021-03-02 327
996133119f57334 Chanwoo Choi 2016-03-22 328 /* For passive governor's internal use. Don't need to set them */
996133119f57334 Chanwoo Choi 2016-03-22 329 struct devfreq *this;
996133119f57334 Chanwoo Choi 2016-03-22 330 struct notifier_block nb;
ae763e5ef1bcfcc Saravana Kannan 2021-03-02 331 struct devfreq_cpu_data *cpu_data[NR_CPUS];
996133119f57334 Chanwoo Choi 2016-03-22 @332 };
996133119f57334 Chanwoo Choi 2016-03-22 333 #endif
996133119f57334 Chanwoo Choi 2016-03-22 334
:::::: The code at line 332 was first introduced by commit
:::::: 996133119f57334c38b020dbfaaac5b5eb127e29 PM / devfreq: Add new passive governor
:::::: TO: Chanwoo Choi <cw00.choi@...sung.com>
:::::: CC: MyungJoo Ham <myungjoo.ham@...sung.com>
---
0-DAY CI Kernel Test Service, Intel Corporation
https://lists.01.org/hyperkitty/list/kbuild-all@lists.01.org
Powered by blists - more mailing lists