Re: arch/alpha/include/asm/mmu_context.h:160:2: error: implicit declaration of function 'task_thread_info'

From: Felix Kuehling
Date: Tue Sep 19 2017 - 17:38:26 EST


Looks like we need to include sched.h before mmu_context.h to make the
Alpha build happy.

Regards,
  Felix


On 2017-09-16 09:50 PM, kbuild test robot wrote:
> Hi Felix,
>
> FYI, the error/warning still remains.
>
> tree: https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git master
> head: 2bd6bf03f4c1c59381d62c61d03f6cc3fe71f66e
> commit: 70539bd79500245cbb4c7af00572fcce540d0105 drm/amd: Update MEC HQD loading code for KFD
> date: 5 weeks ago
> config: alpha-allmodconfig (attached as .config)
> compiler: alpha-linux-gnu-gcc (Debian 6.1.1-9) 6.1.1 20160705
> reproduce:
> wget https://raw.githubusercontent.com/intel/lkp-tests/master/sbin/make.cross -O ~/bin/make.cross
> chmod +x ~/bin/make.cross
> git checkout 70539bd79500245cbb4c7af00572fcce540d0105
> # save the attached .config to linux build tree
> make.cross ARCH=alpha
>
> All errors (new ones prefixed by >>):
>
> In file included from include/linux/mmu_context.h:4:0,
> from drivers/gpu/drm/amd/amdgpu/amdgpu_amdkfd.h:29,
> from drivers/gpu/drm/amd/amdgpu/amdgpu_amdkfd.c:23:
> arch/alpha/include/asm/mmu_context.h: In function 'ev5_switch_mm':
>>> arch/alpha/include/asm/mmu_context.h:160:2: error: implicit declaration of function 'task_thread_info' [-Werror=implicit-function-declaration]
> task_thread_info(next)->pcb.asn = mmc & HARDWARE_ASN_MASK;
> ^~~~~~~~~~~~~~~~
>>> arch/alpha/include/asm/mmu_context.h:160:24: error: invalid type argument of '->' (have 'int')
> task_thread_info(next)->pcb.asn = mmc & HARDWARE_ASN_MASK;
> ^~
> arch/alpha/include/asm/mmu_context.h: In function 'init_new_context':
> arch/alpha/include/asm/mmu_context.h:238:24: error: invalid type argument of '->' (have 'int')
> task_thread_info(tsk)->pcb.ptbr
> ^~
> arch/alpha/include/asm/mmu_context.h: In function 'enter_lazy_tlb':
> arch/alpha/include/asm/mmu_context.h:252:23: error: invalid type argument of '->' (have 'int')
> task_thread_info(tsk)->pcb.ptbr
> ^~
> cc1: some warnings being treated as errors
>
> vim +/task_thread_info +160 arch/alpha/include/asm/mmu_context.h
>
> ^1da177e4 include/asm-alpha/mmu_context.h Linus Torvalds 2005-04-16 156
> ^1da177e4 include/asm-alpha/mmu_context.h Linus Torvalds 2005-04-16 157 /* Always update the PCB ASN. Another thread may have allocated
> ^1da177e4 include/asm-alpha/mmu_context.h Linus Torvalds 2005-04-16 158 a new mm->context (via flush_tlb_mm) without the ASN serial
> ^1da177e4 include/asm-alpha/mmu_context.h Linus Torvalds 2005-04-16 159 number wrapping. We have no way to detect when this is needed. */
> 37bfbaf99 include/asm-alpha/mmu_context.h Al Viro 2006-01-12 @160 task_thread_info(next)->pcb.asn = mmc & HARDWARE_ASN_MASK;
> ^1da177e4 include/asm-alpha/mmu_context.h Linus Torvalds 2005-04-16 161 }
> ^1da177e4 include/asm-alpha/mmu_context.h Linus Torvalds 2005-04-16 162
>
> :::::: The code at line 160 was first introduced by commit
> :::::: 37bfbaf995d2c1f8196ee04c9d6f68258d5ec3e8 [PATCH] alpha: task_thread_info()
>
> :::::: TO: Al Viro <viro@xxxxxxxxxxxxxxxx>
> :::::: CC: Linus Torvalds <torvalds@xxxxxxxxxxx>
>
> ---
> 0-DAY kernel test infrastructure Open Source Technology Center
> https://lists.01.org/pipermail/kbuild-all Intel Corporation