llvm.lists.linux.dev archive mirror
 help / color / mirror / Atom feed
* [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).