Re: arch/powerpc/kvm/../kernel/head_booke.h:20:6: warning: "THREAD_SHIFT" is not defined, evaluates to 0

From: Nathan Chancellor
Date: Fri Apr 07 2023 - 19:15:08 EST


On Fri, Apr 07, 2023 at 04:08:43PM -0700, Nick Desaulniers wrote:
> On Tue, Apr 4, 2023 at 6:29 PM kernel test robot <lkp@xxxxxxxxx> wrote:
> >
> > Hi Masahiro,
> >
> > FYI, the error/warning still remains.
> >
> > tree: https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git master
> > head: 76f598ba7d8e2bfb4855b5298caedd5af0c374a8
> > commit: 80b6093b55e31c2c40ff082fb32523d4e852954f kbuild: add -Wundef to KBUILD_CPPFLAGS for W=1 builds
> > date: 4 months ago
> > config: powerpc-buildonly-randconfig-r003-20230405 (https://download.01.org/0day-ci/archive/20230405/202304050954.yskLdczH-lkp@xxxxxxxxx/config)
> > compiler: powerpc-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://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git/commit/?id=80b6093b55e31c2c40ff082fb32523d4e852954f
> > git remote add linus https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git
> > git fetch --no-tags linus master
> > git checkout 80b6093b55e31c2c40ff082fb32523d4e852954f
> > # 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=powerpc olddefconfig
> > COMPILER_INSTALL_PATH=$HOME/0day COMPILER=gcc-12.1.0 make.cross W=1 O=build_dir ARCH=powerpc SHELL=/bin/bash arch/powerpc/kernel/ arch/powerpc/kvm/ virt/
> >
> > If you fix the issue, kindly add following tag where applicable
> > | Reported-by: kernel test robot <lkp@xxxxxxxxx>
> > | Link: https://lore.kernel.org/oe-kbuild-all/202304050954.yskLdczH-lkp@xxxxxxxxx/
> >
> > All warnings (new ones prefixed by >>):
> >
> > In file included from arch/powerpc/kvm/bookehv_interrupts.S:26:
> > >> arch/powerpc/kvm/../kernel/head_booke.h:20:6: warning: "THREAD_SHIFT" is not defined, evaluates to 0 [-Wundef]
> > 20 | #if (THREAD_SHIFT < 15)
> > | ^~~~~~~~~~~~
>
> Should arch/powerpc/kernel/head_booke.h be #include'ing
> asm/thread_info.h before using THREAD_SHIFT?

I think so, sorry for not cc'ing you on
https://lore.kernel.org/linuxppc-dev/20230406-wundef-thread_shift_booke-v1-1-8deffa4d84f9@xxxxxxxxxx/

> >
> >
> > vim +/THREAD_SHIFT +20 arch/powerpc/kvm/../kernel/head_booke.h
> >
> > 1a4b739bbb4f88 Christophe Leroy 2019-04-30 10
> > 63dafe5728e735 Becky Bruce 2006-01-14 11 /*
> > 63dafe5728e735 Becky Bruce 2006-01-14 12 * Macros used for common Book-e exception handling
> > 63dafe5728e735 Becky Bruce 2006-01-14 13 */
> > 63dafe5728e735 Becky Bruce 2006-01-14 14
> > 63dafe5728e735 Becky Bruce 2006-01-14 15 #define SET_IVOR(vector_number, vector_label) \
> > 63dafe5728e735 Becky Bruce 2006-01-14 16 li r26,vector_label@l; \
> > 63dafe5728e735 Becky Bruce 2006-01-14 17 mtspr SPRN_IVOR##vector_number,r26; \
> > 63dafe5728e735 Becky Bruce 2006-01-14 18 sync
> > 63dafe5728e735 Becky Bruce 2006-01-14 19
> > e12401222f749c Yuri Tikhonov 2009-01-29 @20 #if (THREAD_SHIFT < 15)
> > e12401222f749c Yuri Tikhonov 2009-01-29 21 #define ALLOC_STACK_FRAME(reg, val) \
> > e12401222f749c Yuri Tikhonov 2009-01-29 22 addi reg,reg,val
> > e12401222f749c Yuri Tikhonov 2009-01-29 23 #else
> > e12401222f749c Yuri Tikhonov 2009-01-29 24 #define ALLOC_STACK_FRAME(reg, val) \
> > e12401222f749c Yuri Tikhonov 2009-01-29 25 addis reg,reg,val@ha; \
> > e12401222f749c Yuri Tikhonov 2009-01-29 26 addi reg,reg,val@l
> > e12401222f749c Yuri Tikhonov 2009-01-29 27 #endif
> > e12401222f749c Yuri Tikhonov 2009-01-29 28
> >
> > :::::: The code at line 20 was first introduced by commit
> > :::::: e12401222f749c37277a313d631dc024bbfd3b00 powerpc/44x: Support for 256KB PAGE_SIZE
> >
> > :::::: TO: Yuri Tikhonov <yur@xxxxxxxxxxx>
> > :::::: CC: Josh Boyer <jwboyer@xxxxxxxxxxxxxxxxxx>
> >
> > --
> > 0-DAY CI Kernel Test Service
> > https://github.com/intel/lkp-tests
>
>
>
> --
> Thanks,
> ~Nick Desaulniers