[powerpc:next-test 9/109] arch/powerpc/include/asm/paca.h:155:23: error: field has incomplete type 'struct tlb_core_data'

kernel test robot lkp at intel.com
Tue Aug 22 15:58:09 AEST 2023


tree:   https://git.kernel.org/pub/scm/linux/kernel/git/powerpc/linux.git next-test
head:   0f71dcfb4aef6043da6cc509e7a7f6a3ae87c12d
commit: 3a24ea0df83e32355d897a18bbd82e05986dcdc3 [9/109] powerpc/kuap: Use ASM feature fixups instead of static branches
config: powerpc64-randconfig-r012-20230822 (https://download.01.org/0day-ci/archive/20230822/202308221352.nocgtdJP-lkp@intel.com/config)
compiler: clang version 17.0.0 (https://github.com/llvm/llvm-project.git 4a5ac14ee968ff0ad5d2cc1ffa0299048db4c88a)
reproduce: (https://download.01.org/0day-ci/archive/20230822/202308221352.nocgtdJP-lkp@intel.com/reproduce)

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 at intel.com>
| Closes: https://lore.kernel.org/oe-kbuild-all/202308221352.nocgtdJP-lkp@intel.com/

All errors (new ones prefixed by >>):

   In file included from arch/powerpc/mm/nohash/kup.c:11:
   In file included from arch/powerpc/include/asm/kup.h:24:
   In file included from arch/powerpc/include/asm/nohash/kup-booke.h:6:
   In file included from arch/powerpc/include/asm/mmu.h:148:
   In file included from arch/powerpc/include/asm/percpu.h:20:
>> arch/powerpc/include/asm/paca.h:155:23: error: field has incomplete type 'struct tlb_core_data'
     155 |         struct tlb_core_data tcd;
         |                              ^
   arch/powerpc/include/asm/paca.h:139:9: note: forward declaration of 'struct tlb_core_data'
     139 |         struct tlb_core_data *tcd_ptr;
         |                ^
   arch/powerpc/include/asm/paca.h:291:36: warning: declaration of 'struct mm_struct' will not be visible outside of this function [-Wvisibility]
     291 | extern void copy_mm_to_paca(struct mm_struct *mm);
         |                                    ^
   1 warning and 1 error generated.


vim +155 arch/powerpc/include/asm/paca.h

91c60b5b8209627 Benjamin Herrenschmidt 2009-06-02  131  
e0d68273d706953 Christophe Leroy       2022-09-19  132  #ifdef CONFIG_PPC_BOOK3E_64
016f8cf0d87bb2b Kevin Hao              2015-03-10  133  	u64 exgen[8] __aligned(0x40);
f67f4ef5fcdfdee Scott Wood             2011-06-22  134  	/* Keep pgd in the same cacheline as the start of extlb */
016f8cf0d87bb2b Kevin Hao              2015-03-10  135  	pgd_t *pgd __aligned(0x40); /* Current PGD */
f67f4ef5fcdfdee Scott Wood             2011-06-22  136  	pgd_t *kernel_pgd;		/* Kernel PGD */
28efc35fe68dacb Scott Wood             2013-10-11  137  
28efc35fe68dacb Scott Wood             2013-10-11  138  	/* Shared by all threads of a core -- points to tcd of first thread */
28efc35fe68dacb Scott Wood             2013-10-11  139  	struct tlb_core_data *tcd_ptr;
28efc35fe68dacb Scott Wood             2013-10-11  140  
609af38f8fc0f1d Scott Wood             2014-03-10  141  	/*
609af38f8fc0f1d Scott Wood             2014-03-10  142  	 * We can have up to 3 levels of reentrancy in the TLB miss handler,
609af38f8fc0f1d Scott Wood             2014-03-10  143  	 * in each of four exception levels (normal, crit, mcheck, debug).
609af38f8fc0f1d Scott Wood             2014-03-10  144  	 */
609af38f8fc0f1d Scott Wood             2014-03-10  145  	u64 extlb[12][EX_TLB_SIZE / sizeof(u64)];
dce6670aaa7efec Benjamin Herrenschmidt 2009-07-23  146  	u64 exmc[8];		/* used for machine checks */
dce6670aaa7efec Benjamin Herrenschmidt 2009-07-23  147  	u64 excrit[8];		/* used for crit interrupts */
dce6670aaa7efec Benjamin Herrenschmidt 2009-07-23  148  	u64 exdbg[8];		/* used for debug interrupts */
dce6670aaa7efec Benjamin Herrenschmidt 2009-07-23  149  
dce6670aaa7efec Benjamin Herrenschmidt 2009-07-23  150  	/* Kernel stack pointers for use by special exceptions */
dce6670aaa7efec Benjamin Herrenschmidt 2009-07-23  151  	void *mc_kstack;
dce6670aaa7efec Benjamin Herrenschmidt 2009-07-23  152  	void *crit_kstack;
dce6670aaa7efec Benjamin Herrenschmidt 2009-07-23  153  	void *dbg_kstack;
28efc35fe68dacb Scott Wood             2013-10-11  154  
28efc35fe68dacb Scott Wood             2013-10-11 @155  	struct tlb_core_data tcd;
e0d68273d706953 Christophe Leroy       2022-09-19  156  #endif /* CONFIG_PPC_BOOK3E_64 */
dce6670aaa7efec Benjamin Herrenschmidt 2009-07-23  157  

:::::: The code at line 155 was first introduced by commit
:::::: 28efc35fe68dacbddc4b12c2fa8f2df1593a4ad3 powerpc/e6500: TLB miss handler with hardware tablewalk support

:::::: TO: Scott Wood <scottwood at freescale.com>
:::::: CC: Scott Wood <scottwood at freescale.com>

-- 
0-DAY CI Kernel Test Service
https://github.com/intel/lkp-tests/wiki


More information about the Linuxppc-dev mailing list