[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <201910251024.I6neM4qC%lkp@intel.com>
Date: Fri, 25 Oct 2019 10:17:29 +0800
From: kbuild test robot <lkp@...el.com>
To: Mike Rapoport <rppt@...nel.org>
Cc: kbuild-all@...ts.01.org, linux-mm@...ck.org,
Andrew Morton <akpm@...ux-foundation.org>,
Anton Ivanov <anton.ivanov@...bridgegreys.com>,
Arnd Bergmann <arnd@...db.de>,
"David S. Miller" <davem@...emloft.net>,
Geert Uytterhoeven <geert@...ux-m68k.org>,
Greentime Hu <green.hu@...il.com>,
Greg Ungerer <gerg@...ux-m68k.org>,
Helge Deller <deller@....de>,
"James E.J. Bottomley" <James.Bottomley@...senPartnership.com>,
Jeff Dike <jdike@...toit.com>,
"Kirill A. Shutemov" <kirill@...temov.name>,
Linus Torvalds <torvalds@...ux-foundation.org>,
Mark Salter <msalter@...hat.com>,
Matt Turner <mattst88@...il.com>,
Michal Simek <monstr@...str.eu>,
Richard Weinberger <richard@....at>,
Russell King <linux@...linux.org.uk>,
Sam Creasey <sammy@...my.net>,
Vincent Chen <deanbo422@...il.com>,
Vineet Gupta <Vineet.Gupta1@...opsys.com>,
Mike Rapoport <rppt@...nel.org>, linux-alpha@...r.kernel.org,
linux-arch@...r.kernel.org, linux-arm-kernel@...ts.infradead.org,
linux-c6x-dev@...ux-c6x.org, linux-kernel@...r.kernel.org,
linux-m68k@...ts.linux-m68k.org, linux-parisc@...r.kernel.org,
linux-um@...ts.infradead.org, sparclinux@...r.kernel.org,
Mike Rapoport <rppt@...ux.ibm.com>
Subject: Re: [PATCH 06/12] microblaze: use pgtable-nopmd instead of
4level-fixup
Hi Mike,
I love your patch! Yet something to improve:
[auto build test ERROR on mmotm/master]
url: https://github.com/0day-ci/linux/commits/Mike-Rapoport/mm-remove-__ARCH_HAS_4LEVEL_HACK/20191025-063009
base: git://git.cmpxchg.org/linux-mmotm.git master
config: microblaze-mmu_defconfig (attached as .config)
compiler: microblaze-linux-gcc (GCC) 7.4.0
reproduce:
wget https://raw.githubusercontent.com/intel/lkp-tests/master/sbin/make.cross -O ~/bin/make.cross
chmod +x ~/bin/make.cross
# save the attached .config to linux build tree
GCC_VERSION=7.4.0 make.cross ARCH=microblaze
If you fix the issue, kindly add following tag
Reported-by: kbuild test robot <lkp@...el.com>
All error/warnings (new ones prefixed by >>):
In file included from include/linux/shm.h:6:0,
from include/linux/sched.h:16,
from arch/microblaze/mm/consistent.c:15:
arch/microblaze/mm/consistent.c: In function 'consistent_virt_to_pte':
>> arch/microblaze/include/asm/pgtable.h:458:34: error: passing argument 1 of 'pmd_offset' from incompatible pointer type [-Werror=incompatible-pointer-types]
#define pgd_offset(mm, address) ((mm)->pgd + pgd_index(address))
^
arch/microblaze/include/asm/page.h:105:30: note: in definition of macro 'pgd_val'
# define pgd_val(x) ((x).pgd)
^
>> include/asm-generic/pgtable-nopud.h:50:24: note: in expansion of macro 'p4d_val'
#define pud_val(x) (p4d_val((x).p4d))
^~~~~~~
>> include/asm-generic/pgtable-nopmd.h:49:24: note: in expansion of macro 'pud_val'
#define pmd_val(x) (pud_val((x).pud))
^~~~~~~
>> arch/microblaze/include/asm/pgtable.h:448:48: note: in expansion of macro 'pmd_val'
#define pmd_page_kernel(pmd) ((unsigned long) (pmd_val(pmd) & PAGE_MASK))
^~~~~~~
>> arch/microblaze/include/asm/pgtable.h:464:13: note: in expansion of macro 'pmd_page_kernel'
((pte_t *) pmd_page_kernel(*(dir)) + pte_index(addr))
^~~~~~~~~~~~~~~
>> arch/microblaze/mm/consistent.c:162:9: note: in expansion of macro 'pte_offset_kernel'
return pte_offset_kernel(pmd_offset(pgd_offset_k(addr), addr), addr);
^~~~~~~~~~~~~~~~~
>> arch/microblaze/include/asm/pgtable.h:454:31: note: in expansion of macro 'pgd_offset'
#define pgd_offset_k(address) pgd_offset(&init_mm, address)
^~~~~~~~~~
>> arch/microblaze/mm/consistent.c:162:38: note: in expansion of macro 'pgd_offset_k'
return pte_offset_kernel(pmd_offset(pgd_offset_k(addr), addr), addr);
^~~~~~~~~~~~
In file included from arch/microblaze/include/asm/pgtable.h:62:0,
from include/linux/mm.h:99,
from arch/microblaze/include/asm/uaccess.h:15,
from include/linux/uaccess.h:11,
from include/linux/sched/task.h:11,
from include/linux/sched/signal.h:9,
from include/linux/ptrace.h:7,
from arch/microblaze/mm/consistent.c:20:
include/asm-generic/pgtable-nopmd.h:44:23: note: expected 'pud_t * {aka struct <anonymous> *}' but argument is of type 'pgd_t * {aka struct <anonymous> *}'
static inline pmd_t * pmd_offset(pud_t * pud, unsigned long address)
^~~~~~~~~~
cc1: some warnings being treated as errors
vim +/pmd_offset +458 arch/microblaze/include/asm/pgtable.h
15902bf63c8332 Michal Simek 2009-05-26 444
15902bf63c8332 Michal Simek 2009-05-26 445 /* Convert pmd entry to page */
15902bf63c8332 Michal Simek 2009-05-26 446 /* our pmd entry is an effective address of pte table*/
15902bf63c8332 Michal Simek 2009-05-26 447 /* returns effective address of the pmd entry*/
15902bf63c8332 Michal Simek 2009-05-26 @448 #define pmd_page_kernel(pmd) ((unsigned long) (pmd_val(pmd) & PAGE_MASK))
15902bf63c8332 Michal Simek 2009-05-26 449
15902bf63c8332 Michal Simek 2009-05-26 450 /* returns struct *page of the pmd entry*/
15902bf63c8332 Michal Simek 2009-05-26 451 #define pmd_page(pmd) (pfn_to_page(__pa(pmd_val(pmd)) >> PAGE_SHIFT))
15902bf63c8332 Michal Simek 2009-05-26 452
15902bf63c8332 Michal Simek 2009-05-26 453 /* to find an entry in a kernel page-table-directory */
15902bf63c8332 Michal Simek 2009-05-26 @454 #define pgd_offset_k(address) pgd_offset(&init_mm, address)
15902bf63c8332 Michal Simek 2009-05-26 455
15902bf63c8332 Michal Simek 2009-05-26 456 /* to find an entry in a page-table-directory */
15902bf63c8332 Michal Simek 2009-05-26 457 #define pgd_index(address) ((address) >> PGDIR_SHIFT)
15902bf63c8332 Michal Simek 2009-05-26 @458 #define pgd_offset(mm, address) ((mm)->pgd + pgd_index(address))
15902bf63c8332 Michal Simek 2009-05-26 459
15902bf63c8332 Michal Simek 2009-05-26 460 /* Find an entry in the third-level page table.. */
15902bf63c8332 Michal Simek 2009-05-26 461 #define pte_index(address) \
15902bf63c8332 Michal Simek 2009-05-26 462 (((address) >> PAGE_SHIFT) & (PTRS_PER_PTE - 1))
15902bf63c8332 Michal Simek 2009-05-26 463 #define pte_offset_kernel(dir, addr) \
15902bf63c8332 Michal Simek 2009-05-26 @464 ((pte_t *) pmd_page_kernel(*(dir)) + pte_index(addr))
15902bf63c8332 Michal Simek 2009-05-26 465 #define pte_offset_map(dir, addr) \
ece0e2b6406a99 Peter Zijlstra 2010-10-26 466 ((pte_t *) kmap_atomic(pmd_page(*(dir))) + pte_index(addr))
15902bf63c8332 Michal Simek 2009-05-26 467
:::::: The code at line 458 was first introduced by commit
:::::: 15902bf63c8332946e5a1f48a72e3ae22874b11b microblaze_mmu_v2: Page table - ioremap - pgtable.c/h, section update
:::::: TO: Michal Simek <monstr@...str.eu>
:::::: CC: Michal Simek <monstr@...str.eu>
---
0-DAY kernel test infrastructure Open Source Technology Center
https://lists.01.org/pipermail/kbuild-all Intel Corporation
Download attachment ".config.gz" of type "application/gzip" (14079 bytes)
Powered by blists - more mailing lists