* [peterz-queue:core/guards 57/58] kernel/events/core.c:7980:2: error: expected expression
@ 2023-06-10 0:55 kernel test robot
2023-06-10 8:00 ` Peter Zijlstra
0 siblings, 1 reply; 2+ messages in thread
From: kernel test robot @ 2023-06-10 0:55 UTC (permalink / raw)
To: Peter Zijlstra; +Cc: llvm, oe-kbuild-all
tree: https://git.kernel.org/pub/scm/linux/kernel/git/peterz/queue.git core/guards
head: dd132e83d180b932488bcf612576529e6163a1ea
commit: a814a98b2c087f7cdb2b6c08d227b25eacecb08c [57/58] perf: Simplify perf_pmu_output_stop()
config: arm64-buildonly-randconfig-r004-20230610 (https://download.01.org/0day-ci/archive/20230610/202306100841.VgslriZP-lkp@intel.com/config)
compiler: clang version 17.0.0 (https://github.com/llvm/llvm-project.git 4a5ac14ee968ff0ad5d2cc1ffa0299048db4c88a)
reproduce (this is a W=1 build):
mkdir -p ~/bin
wget https://raw.githubusercontent.com/intel/lkp-tests/master/sbin/make.cross -O ~/bin/make.cross
chmod +x ~/bin/make.cross
# install arm64 cross compiling tool for clang build
# apt-get install binutils-aarch64-linux-gnu
# https://git.kernel.org/pub/scm/linux/kernel/git/peterz/queue.git/commit/?id=a814a98b2c087f7cdb2b6c08d227b25eacecb08c
git remote add peterz-queue https://git.kernel.org/pub/scm/linux/kernel/git/peterz/queue.git
git fetch --no-tags peterz-queue core/guards
git checkout a814a98b2c087f7cdb2b6c08d227b25eacecb08c
# save the config file
mkdir build_dir && cp config build_dir/.config
COMPILER_INSTALL_PATH=$HOME/0day COMPILER=clang ~/bin/make.cross W=1 O=build_dir ARCH=arm64 olddefconfig
COMPILER_INSTALL_PATH=$HOME/0day COMPILER=clang ~/bin/make.cross W=1 O=build_dir ARCH=arm64 SHELL=/bin/bash kernel/events/
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/202306100841.VgslriZP-lkp@intel.com/
All errors (new ones prefixed by >>):
>> kernel/events/core.c:7980:2: error: expected expression
7980 | guard(rcu)();
| ^
include/linux/cleanup.h:105:2: note: expanded from macro 'guard'
105 | CLASS(name, __UNIQUE_ID(guard))
| ^
include/linux/cleanup.h:82:2: note: expanded from macro 'CLASS'
82 | class_##name##_t var __cleanup(class_##name##_destructor) = \
| ^
<scratch space>:36:1: note: expanded from here
36 | class_rcu_t
| ^
kernel/events/core.c:11321:6: warning: no previous prototype for function '__perf_pmu_unregister' [-Wmissing-prototypes]
11321 | void __perf_pmu_unregister(struct pmu *pmu)
| ^
kernel/events/core.c:11321:1: note: declare 'static' if the function is not intended to be used outside of this translation unit
11321 | void __perf_pmu_unregister(struct pmu *pmu)
| ^
| static
1 warning and 1 error generated.
vim +7980 kernel/events/core.c
7973
7974 static void perf_pmu_output_stop(struct perf_event *event)
7975 {
7976 struct perf_event *iter;
7977 int err, cpu;
7978
7979 restart:
> 7980 guard(rcu)();
7981 list_for_each_entry_rcu(iter, &event->rb->event_list, rb_entry) {
7982 /*
7983 * For per-CPU events, we need to make sure that neither they
7984 * nor their children are running; for cpu==-1 events it's
7985 * sufficient to stop the event itself if it's active, since
7986 * it can't have children.
7987 */
7988 cpu = iter->cpu;
7989 if (cpu == -1)
7990 cpu = READ_ONCE(iter->oncpu);
7991
7992 if (cpu == -1)
7993 continue;
7994
7995 err = cpu_function_call(cpu, __perf_pmu_output_stop, event);
7996 if (err == -EAGAIN)
7997 goto restart;
7998 }
7999 }
8000
--
0-DAY CI Kernel Test Service
https://github.com/intel/lkp-tests/wiki
^ permalink raw reply [flat|nested] 2+ messages in thread
* Re: [peterz-queue:core/guards 57/58] kernel/events/core.c:7980:2: error: expected expression
2023-06-10 0:55 [peterz-queue:core/guards 57/58] kernel/events/core.c:7980:2: error: expected expression kernel test robot
@ 2023-06-10 8:00 ` Peter Zijlstra
0 siblings, 0 replies; 2+ messages in thread
From: Peter Zijlstra @ 2023-06-10 8:00 UTC (permalink / raw)
To: kernel test robot; +Cc: llvm, oe-kbuild-all, Nick Desaulniers
On Sat, Jun 10, 2023 at 08:55:40AM +0800, kernel test robot wrote:
> tree: https://git.kernel.org/pub/scm/linux/kernel/git/peterz/queue.git core/guards
> head: dd132e83d180b932488bcf612576529e6163a1ea
> commit: a814a98b2c087f7cdb2b6c08d227b25eacecb08c [57/58] perf: Simplify perf_pmu_output_stop()
> config: arm64-buildonly-randconfig-r004-20230610 (https://download.01.org/0day-ci/archive/20230610/202306100841.VgslriZP-lkp@intel.com/config)
> compiler: clang version 17.0.0 (https://github.com/llvm/llvm-project.git 4a5ac14ee968ff0ad5d2cc1ffa0299048db4c88a)
> reproduce (this is a W=1 build):
> mkdir -p ~/bin
> wget https://raw.githubusercontent.com/intel/lkp-tests/master/sbin/make.cross -O ~/bin/make.cross
> chmod +x ~/bin/make.cross
> # install arm64 cross compiling tool for clang build
> # apt-get install binutils-aarch64-linux-gnu
> # https://git.kernel.org/pub/scm/linux/kernel/git/peterz/queue.git/commit/?id=a814a98b2c087f7cdb2b6c08d227b25eacecb08c
> git remote add peterz-queue https://git.kernel.org/pub/scm/linux/kernel/git/peterz/queue.git
> git fetch --no-tags peterz-queue core/guards
> git checkout a814a98b2c087f7cdb2b6c08d227b25eacecb08c
> # save the config file
> mkdir build_dir && cp config build_dir/.config
> COMPILER_INSTALL_PATH=$HOME/0day COMPILER=clang ~/bin/make.cross W=1 O=build_dir ARCH=arm64 olddefconfig
> COMPILER_INSTALL_PATH=$HOME/0day COMPILER=clang ~/bin/make.cross W=1 O=build_dir ARCH=arm64 SHELL=/bin/bash kernel/events/
>
> 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/202306100841.VgslriZP-lkp@intel.com/
>
> All errors (new ones prefixed by >>):
>
> >> kernel/events/core.c:7980:2: error: expected expression
> 7980 | guard(rcu)();
> | ^
> include/linux/cleanup.h:105:2: note: expanded from macro 'guard'
> 105 | CLASS(name, __UNIQUE_ID(guard))
> | ^
> include/linux/cleanup.h:82:2: note: expanded from macro 'CLASS'
> 82 | class_##name##_t var __cleanup(class_##name##_destructor) = \
> | ^
> <scratch space>:36:1: note: expanded from here
> 36 | class_rcu_t
> | ^
> kernel/events/core.c:11321:6: warning: no previous prototype for function '__perf_pmu_unregister' [-Wmissing-prototypes]
> 11321 | void __perf_pmu_unregister(struct pmu *pmu)
> | ^
> kernel/events/core.c:11321:1: note: declare 'static' if the function is not intended to be used outside of this translation unit
> 11321 | void __perf_pmu_unregister(struct pmu *pmu)
> | ^
> | static
> 1 warning and 1 error generated.
>
>
> vim +7980 kernel/events/core.c
>
> 7973
> 7974 static void perf_pmu_output_stop(struct perf_event *event)
> 7975 {
> 7976 struct perf_event *iter;
> 7977 int err, cpu;
> 7978
> 7979 restart:
;
> > 7980 guard(rcu)();
Makes it work... For some raisin it doesn't like having a label point to
a decl for some builds -- I can't seem to reproduce this on x86, but I
can make aargh64-linux-gcc give me the same complaint.
Can a compiler person eludicate this matter?
^ permalink raw reply [flat|nested] 2+ messages in thread
end of thread, other threads:[~2023-06-10 8:00 UTC | newest]
Thread overview: 2+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2023-06-10 0:55 [peterz-queue:core/guards 57/58] kernel/events/core.c:7980:2: error: expected expression kernel test robot
2023-06-10 8:00 ` Peter Zijlstra
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).