Hi "Aneesh,
I love your patch! Perhaps something to improve:
[auto build test WARNING on powerpc/next]
[also build test WARNING on asm-generic/master tip/x86/mm linus/master sparc/master
v5.13-rc6 next-20210615]
[cannot apply to hnaz-linux-mm/master sparc-next/master]
[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]
url:
https://github.com/0day-ci/linux/commits/Aneesh-Kumar-K-V/mm-rename-pud_p...
base:
https://git.kernel.org/pub/scm/linux/kernel/git/powerpc/linux.git next
config: alpha-randconfig-r026-20210615 (attached as .config)
compiler: alpha-linux-gcc (GCC) 9.3.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/0day-ci/linux/commit/8af9180cf61ec19f32f0594a59277d0ca...
git remote add linux-review
https://github.com/0day-ci/linux
git fetch --no-tags linux-review
Aneesh-Kumar-K-V/mm-rename-pud_page_vaddr-to-pud_pgtable-and-make-it-return-pmd_t/20210616-162847
git checkout 8af9180cf61ec19f32f0594a59277d0cabff5317
# save the attached .config to linux build tree
COMPILER_INSTALL_PATH=$HOME/0day COMPILER=gcc-9.3.0 make.cross ARCH=alpha
If you fix the issue, kindly add following tag as appropriate
Reported-by: kernel test robot <lkp(a)intel.com>
All warnings (new ones prefixed by >>):
arch/alpha/kernel/asm-offsets.c:15:6: warning: no previous prototype for 'foo'
[-Wmissing-prototypes]
15 | void foo(void)
| ^~~
In file included from include/linux/pgtable.h:6,
from include/linux/mm.h:33,
from include/linux/pid_namespace.h:7,
from include/linux/ptrace.h:10,
from arch/alpha/kernel/asm-offsets.c:11:
> arch/alpha/include/asm/pgtable.h:295:15: warning:
'pud_pgtable' is static but used in inline function 'pmd_offset' which is
not static
295 | pmd_t *ret = pud_pgtable(*dir) + ((address >>
PMD_SHIFT) & (PTRS_PER_PAGE - 1));
| ^~~~~~~~~~~
--
In file included from include/linux/pgtable.h:6,
from include/linux/mm.h:33,
from arch/alpha/include/asm/io.h:8,
from include/linux/io.h:13,
from include/linux/irq.h:20,
from arch/alpha/kernel/irq_srm.c:8:
> arch/alpha/include/asm/pgtable.h:295:15: warning:
'pud_pgtable' is static but used in inline function 'pmd_offset' which is
not static
295 | pmd_t *ret = pud_pgtable(*dir) + ((address >>
PMD_SHIFT) & (PTRS_PER_PAGE - 1));
| ^~~~~~~~~~~
--
arch/alpha/kernel/traps.c:212:1: warning: no previous prototype for
'do_entArith' [-Wmissing-prototypes]
212 | do_entArith(unsigned long summary, unsigned long write_mask,
| ^~~~~~~~~~~
arch/alpha/kernel/traps.c:234:1: warning: no previous prototype for 'do_entIF'
[-Wmissing-prototypes]
234 | do_entIF(unsigned long type, struct pt_regs *regs)
| ^~~~~~~~
arch/alpha/kernel/traps.c:401:1: warning: no previous prototype for 'do_entDbg'
[-Wmissing-prototypes]
401 | do_entDbg(struct pt_regs *regs)
| ^~~~~~~~~
arch/alpha/kernel/traps.c:437:1: warning: no previous prototype for 'do_entUna'
[-Wmissing-prototypes]
437 | do_entUna(void * va, unsigned long opcode, unsigned long reg,
| ^~~~~~~~~
arch/alpha/kernel/traps.c:722:1: warning: no previous prototype for
'do_entUnaUser' [-Wmissing-prototypes]
722 | do_entUnaUser(void __user * va, unsigned long opcode,
| ^~~~~~~~~~~~~
arch/alpha/kernel/traps.c:977:1: warning: no previous prototype for 'trap_init'
[-Wmissing-prototypes]
977 | trap_init(void)
| ^~~~~~~~~
In file included from include/linux/pgtable.h:6,
from include/linux/mm.h:33,
from arch/alpha/kernel/traps.c:13:
> arch/alpha/include/asm/pgtable.h:295:15: warning:
'pud_pgtable' is static but used in inline function 'pmd_offset' which is
not static
295 | pmd_t *ret = pud_pgtable(*dir) + ((address >>
PMD_SHIFT) & (PTRS_PER_PAGE - 1));
| ^~~~~~~~~~~
--
arch/alpha/kernel/process.c:57:6: warning: no previous prototype for
'arch_cpu_idle' [-Wmissing-prototypes]
57 | void arch_cpu_idle(void)
| ^~~~~~~~~~~~~
arch/alpha/kernel/process.c:63:6: warning: no previous prototype for
'arch_cpu_idle_dead' [-Wmissing-prototypes]
63 | void arch_cpu_idle_dead(void)
| ^~~~~~~~~~~~~~~~~~
In file included from include/linux/pgtable.h:6,
from include/linux/mm.h:33,
from arch/alpha/kernel/process.c:19:
> arch/alpha/include/asm/pgtable.h:295:15: warning:
'pud_pgtable' is static but used in inline function 'pmd_offset' which is
not static
295 | pmd_t *ret = pud_pgtable(*dir) + ((address >>
PMD_SHIFT) & (PTRS_PER_PAGE - 1));
| ^~~~~~~~~~~
--
arch/alpha/kernel/irq.c:96:1: warning: no previous prototype for 'handle_irq'
[-Wmissing-prototypes]
96 | handle_irq(int irq)
| ^~~~~~~~~~
In file included from include/linux/pgtable.h:6,
from include/linux/mm.h:33,
from arch/alpha/include/asm/io.h:8,
from include/linux/io.h:13,
from include/linux/irq.h:20,
from include/asm-generic/hardirq.h:17,
from arch/alpha/include/asm/hardirq.h:8,
from include/linux/hardirq.h:11,
from include/linux/interrupt.h:11,
from include/linux/kernel_stat.h:9,
from arch/alpha/kernel/irq.c:17:
> arch/alpha/include/asm/pgtable.h:295:15: warning:
'pud_pgtable' is static but used in inline function 'pmd_offset' which is
not static
295 | pmd_t *ret = pud_pgtable(*dir) + ((address >>
PMD_SHIFT) & (PTRS_PER_PAGE - 1));
| ^~~~~~~~~~~
--
arch/alpha/kernel/irq_alpha.c:45:1: warning: no previous prototype for
'do_entInt' [-Wmissing-prototypes]
45 | do_entInt(unsigned long type, unsigned long vector,
| ^~~~~~~~~
arch/alpha/kernel/irq_alpha.c:103:1: warning: no previous prototype for
'init_IRQ' [-Wmissing-prototypes]
103 | init_IRQ(void)
| ^~~~~~~~
In file included from include/linux/pgtable.h:6,
from include/linux/mm.h:33,
from arch/alpha/include/asm/io.h:8,
from include/linux/io.h:13,
from include/linux/irq.h:20,
from arch/alpha/kernel/irq_alpha.c:8:
> arch/alpha/include/asm/pgtable.h:295:15: warning:
'pud_pgtable' is static but used in inline function 'pmd_offset' which is
not static
295 | pmd_t *ret = pud_pgtable(*dir) + ((address >>
PMD_SHIFT) & (PTRS_PER_PAGE - 1));
| ^~~~~~~~~~~
--
arch/alpha/kernel/signal.c:204:1: warning: no previous prototype for
'do_sigreturn' [-Wmissing-prototypes]
204 | do_sigreturn(struct sigcontext __user *sc)
| ^~~~~~~~~~~~
arch/alpha/kernel/signal.c:232:1: warning: no previous prototype for
'do_rt_sigreturn' [-Wmissing-prototypes]
232 | do_rt_sigreturn(struct rt_sigframe __user *frame)
| ^~~~~~~~~~~~~~~
arch/alpha/kernel/signal.c:522:1: warning: no previous prototype for
'do_work_pending' [-Wmissing-prototypes]
522 | do_work_pending(struct pt_regs *regs, unsigned long thread_flags,
| ^~~~~~~~~~~~~~~
In file included from include/linux/pgtable.h:6,
from include/linux/mm.h:33,
from include/linux/pid_namespace.h:7,
from include/linux/ptrace.h:10,
from arch/alpha/kernel/signal.c:16:
> arch/alpha/include/asm/pgtable.h:295:15: warning:
'pud_pgtable' is static but used in inline function 'pmd_offset' which is
not static
295 | pmd_t *ret = pud_pgtable(*dir) + ((address >>
PMD_SHIFT) & (PTRS_PER_PAGE - 1));
| ^~~~~~~~~~~
--
arch/alpha/kernel/setup.c:289:1: warning: no previous prototype for
'move_initrd' [-Wmissing-prototypes]
289 | move_initrd(unsigned long mem_limit)
| ^~~~~~~~~~~
In file included from include/linux/pgtable.h:6,
from include/linux/mm.h:33,
from arch/alpha/kernel/setup.c:16:
> arch/alpha/include/asm/pgtable.h:295:15: warning:
'pud_pgtable' is static but used in inline function 'pmd_offset' which is
not static
295 | pmd_t *ret = pud_pgtable(*dir) + ((address >>
PMD_SHIFT) & (PTRS_PER_PAGE - 1));
| ^~~~~~~~~~~
--
arch/alpha/kernel/ptrace.c:321:26: warning: no previous prototype for
'syscall_trace_enter' [-Wmissing-prototypes]
321 | asmlinkage unsigned long syscall_trace_enter(void)
| ^~~~~~~~~~~~~~~~~~~
arch/alpha/kernel/ptrace.c:333:1: warning: no previous prototype for
'syscall_trace_leave' [-Wmissing-prototypes]
333 | syscall_trace_leave(void)
| ^~~~~~~~~~~~~~~~~~~
In file included from include/linux/pgtable.h:6,
from include/linux/mm.h:33,
from arch/alpha/kernel/ptrace.c:11:
> arch/alpha/include/asm/pgtable.h:295:15: warning:
'pud_pgtable' is static but used in inline function 'pmd_offset' which is
not static
295 | pmd_t *ret = pud_pgtable(*dir) + ((address >>
PMD_SHIFT) & (PTRS_PER_PAGE - 1));
| ^~~~~~~~~~~
--
arch/alpha/kernel/time.c:64:6: warning: no previous prototype for
'arch_irq_work_raise' [-Wmissing-prototypes]
64 | void arch_irq_work_raise(void)
| ^~~~~~~~~~~~~~~~~~~
arch/alpha/kernel/time.c:390:1: warning: no previous prototype for 'time_init'
[-Wmissing-prototypes]
390 | time_init(void)
| ^~~~~~~~~
In file included from include/linux/pgtable.h:6,
from include/linux/mm.h:33,
from arch/alpha/kernel/time.c:28:
> arch/alpha/include/asm/pgtable.h:295:15: warning:
'pud_pgtable' is static but used in inline function 'pmd_offset' which is
not static
295 | pmd_t *ret = pud_pgtable(*dir) + ((address >>
PMD_SHIFT) & (PTRS_PER_PAGE - 1));
| ^~~~~~~~~~~
--
arch/alpha/kernel/io.c:637:1: warning: no previous prototype for 'scr_memcpyw'
[-Wmissing-prototypes]
637 | scr_memcpyw(u16 *d, const u16 *s, unsigned int count)
| ^~~~~~~~~~~
In file included from include/linux/pgtable.h:6,
from include/linux/mm.h:33,
from arch/alpha/include/asm/io.h:8,
from arch/alpha/kernel/io.c:10:
> arch/alpha/include/asm/pgtable.h:295:15: warning:
'pud_pgtable' is static but used in inline function 'pmd_offset' which is
not static
295 | pmd_t *ret = pud_pgtable(*dir) + ((address >>
PMD_SHIFT) & (PTRS_PER_PAGE - 1));
| ^~~~~~~~~~~
..
vim +295 arch/alpha/include/asm/pgtable.h
278
279 /*
280 * The smp_rmb() in the following functions are required to order the load of
281 * *dir (the pointer in the top level page table) with any subsequent load of
282 * the returned pmd_t *ret (ret is data dependent on *dir).
283 *
284 * If this ordering is not enforced, the CPU might load an older value of
285 * *ret, which may be uninitialized data. See mm/memory.c:__pte_alloc for
286 * more details.
287 *
288 * Note that we never change the mm->pgd pointer after the task is running, so
289 * pgd_offset does not require such a barrier.
290 */
291
292 /* Find an entry in the second-level page table.. */
293 extern inline pmd_t * pmd_offset(pud_t * dir, unsigned long address)
294 {
295 pmd_t *ret = pud_pgtable(*dir) + ((address >> PMD_SHIFT)
& (PTRS_PER_PAGE - 1));
296 smp_rmb(); /* see above */
297 return ret;
298 }
299 #define pmd_offset pmd_offset
300
---
0-DAY CI Kernel Test Service, Intel Corporation
https://lists.01.org/hyperkitty/list/kbuild-all@lists.01.org