Re: [PATCH v3 08/14] sched: Replace rq->curr access w/ rq_curr(rq)

John Stultz
2023-04-11T20:06:09Z

On Tue, Apr 11, 2023 at 7:07 AM kernel test robot <lkp@intel.com> wrote:
>
> Hi John,
>
> kernel test robot noticed the following build errors:
>
> [auto build test ERROR on tip/locking/core]
> [also build test ERROR on tip/master tip/auto-latest linus/master v6.3-rc6 next-20230411]
> [cannot apply to tip/sched/core]
> [If your patch is applied to the wrong git tree, kindly drop us a note.
> And when submitting patch, we suggest to use '--base' as documented in
> https://git-scm.com/docs/git-format-patch#_base_tree_information]
>
> url: https://github.com/intel-lab-lkp/linux/commits/John-Stultz/locking-ww_mutex-Remove-wakeups-from-under-mutex-wait_lock/20230411-122859
> patch link: https://lore.kernel.org/r/20230411042511.1606592-9-jstultz%40google.com
> patch subject: [PATCH v3 08/14] sched: Replace rq->curr access w/ rq_curr(rq)
> config: s390-allyesconfig (https://download.01.org/0day-ci/archive/20230411/202304112129.2DLHpwAl-lkp@intel.com/config)
> compiler: s390-linux-gcc (GCC) 12.1.0
> reproduce (this is a W=1 build):
> wget https://raw.githubusercontent.com/intel/lkp-tests/master/sbin/make.cross -O ~/bin/make.cross
> chmod +x ~/bin/make.cross
> # https://github.com/intel-lab-lkp/linux/commit/b562351b6a0f874c80020dfc83b22a6f8959aaec
> git remote add linux-review https://github.com/intel-lab-lkp/linux
> git fetch --no-tags linux-review John-Stultz/locking-ww_mutex-Remove-wakeups-from-under-mutex-wait_lock/20230411-122859
> git checkout b562351b6a0f874c80020dfc83b22a6f8959aaec
> # save the config file
> mkdir build_dir && cp config build_dir/.config
> COMPILER_INSTALL_PATH=$HOME/0day COMPILER=gcc-12.1.0 make.cross W=1 O=build_dir ARCH=s390 olddefconfig
> COMPILER_INSTALL_PATH=$HOME/0day COMPILER=gcc-12.1.0 make.cross W=1 O=build_dir ARCH=s390 SHELL=/bin/bash kernel/
>
> If you fix the issue, kindly add following tag where applicable
> | Reported-by: kernel test robot <lkp@intel.com>
> | Link: https://lore.kernel.org/oe-kbuild-all/202304112129.2DLHpwAl-lkp@intel.com/
>
> All errors (new ones prefixed by >>):
>
> In file included from arch/s390/include/asm/rwonce.h:29,
> from include/linux/compiler.h:247,
> from include/linux/kernel.h:20,
> from include/linux/cpumask.h:10,
> from include/linux/energy_model.h:4,
> from kernel/sched/fair.c:23:
> kernel/sched/fair.c: In function 'task_numa_compare':
> >> include/asm-generic/rwonce.h:44:71: error: lvalue required as unary '&' operand
> 44 | #define __READ_ONCE(x) (*(const volatile __unqual_scalar_typeof(x) *)&(x))
> | ^
> include/asm-generic/rwonce.h:50:9: note: in expansion of macro '__READ_ONCE'
> 50 | __READ_ONCE(x); \
> | ^~~~~~~~~~~
> include/linux/rcupdate.h:462:50: note: in expansion of macro 'READ_ONCE'
> 462 | typeof(*p) *local = (typeof(*p) *__force)READ_ONCE(p); \
> | ^~~~~~~~~
> include/linux/rcupdate.h:610:9: note: in expansion of macro '__rcu_dereference_check'
> 610 | __rcu_dereference_check((p), __UNIQUE_ID(rcu), \
> | ^~~~~~~~~~~~~~~~~~~~~~~
> include/linux/rcupdate.h:682:28: note: in expansion of macro 'rcu_dereference_check'
> 682 | #define rcu_dereference(p) rcu_dereference_check(p, 0)
> | ^~~~~~~~~~~~~~~~~~~~~
> kernel/sched/fair.c:1961:15: note: in expansion of macro 'rcu_dereference'
> 1961 | cur = rcu_dereference(rq_curr(dst_rq));
> | ^~~~~~~~~~~~~~~
> kernel/sched/fair.c: In function 'task_numa_group':

Many thanks for this report! I've just fixed this up, and if any folks
are hitting this, they can pull updated patches here:
https://github.com/johnstultz-work/linux-dev.git proxy-exec-WIP

thanks!
-john