[rppt:pg_table/v0.0 9/18] include/linux/mm.h:1800:20: error: passing argument 1 of 'mm_pmd_folded' from incompatible pointer type
by kbuild test robot
tree: https://git.kernel.org/pub/scm/linux/kernel/git/rppt/linux.git pg_table/v0.0
head: fd150c5a9ef6e3e43818825c69a46de2b427dedf
commit: 794797e827272a2e9dc8ac1bae63b1ac427b015d [9/18] mm: enable pmd allocations for pg_table
config: s390-randconfig-a001-20200202 (attached as .config)
compiler: s390-linux-gcc (GCC) 7.5.0
reproduce:
wget https://raw.githubusercontent.com/intel/lkp-tests/master/sbin/make.cross -O ~/bin/make.cross
chmod +x ~/bin/make.cross
git checkout 794797e827272a2e9dc8ac1bae63b1ac427b015d
# save the attached .config to linux build tree
GCC_VERSION=7.5.0 make.cross ARCH=s390
If you fix the issue, kindly add following tag
Reported-by: kbuild test robot <lkp(a)intel.com>
All errors (new ones prefixed by >>):
In file included from include/linux/mm.h:99:0,
from include/linux/kvm_host.h:14,
from arch/s390/kernel/asm-offsets.c:11:
include/linux/mm.h: In function 'mm_inc_nr_pmds':
>> include/linux/mm.h:1800:20: error: passing argument 1 of 'mm_pmd_folded' from incompatible pointer type [-Werror=incompatible-pointer-types]
if (mm_pmd_folded(pgt))
^
arch/s390/include/asm/pgtable.h:514:41: note: in definition of macro 'mm_pmd_folded'
#define mm_pmd_folded(mm) mm_pmd_folded(mm)
^~
arch/s390/include/asm/pgtable.h:510:20: note: expected 'struct mm_struct *' but argument is of type 'struct pg_table *'
static inline bool mm_pmd_folded(struct mm_struct *mm)
^~~~~~~~~~~~~
include/linux/mm.h: In function 'mm_dec_nr_pmds':
include/linux/mm.h:1807:20: error: passing argument 1 of 'mm_pmd_folded' from incompatible pointer type [-Werror=incompatible-pointer-types]
if (mm_pmd_folded(pgt))
^
arch/s390/include/asm/pgtable.h:514:41: note: in definition of macro 'mm_pmd_folded'
#define mm_pmd_folded(mm) mm_pmd_folded(mm)
^~
arch/s390/include/asm/pgtable.h:510:20: note: expected 'struct mm_struct *' but argument is of type 'struct pg_table *'
static inline bool mm_pmd_folded(struct mm_struct *mm)
^~~~~~~~~~~~~
cc1: some warnings being treated as errors
make[2]: *** [arch/s390/kernel/asm-offsets.s] Error 1
make[2]: Target '__build' not remade because of errors.
make[1]: *** [prepare0] Error 2
make[1]: Target 'prepare' not remade because of errors.
make: *** [sub-make] Error 2
25 real 7 user 11 sys 73.60% cpu make prepare
vim +/mm_pmd_folded +1800 include/linux/mm.h
1797
1798 static inline void mm_inc_nr_pmds(struct pg_table *pgt)
1799 {
> 1800 if (mm_pmd_folded(pgt))
1801 return;
1802 atomic_long_add(PTRS_PER_PMD * sizeof(pmd_t), &pgt->pgtables_bytes);
1803 }
1804
---
0-DAY kernel test infrastructure Open Source Technology Center
https://lists.01.org/hyperkitty/list/kbuild-all@lists.01.org Intel Corporation
2 years, 3 months
[rppt:pg_table/v0.0 9/18] mm/memory.c:854:22: error: passing argument 1 of '__pmd_alloc' from incompatible pointer type
by kbuild test robot
tree: https://git.kernel.org/pub/scm/linux/kernel/git/rppt/linux.git pg_table/v0.0
head: fd150c5a9ef6e3e43818825c69a46de2b427dedf
commit: 794797e827272a2e9dc8ac1bae63b1ac427b015d [9/18] mm: enable pmd allocations for pg_table
config: nds32-defconfig (attached as .config)
compiler: nds32le-linux-gcc (GCC) 9.2.0
reproduce:
wget https://raw.githubusercontent.com/intel/lkp-tests/master/sbin/make.cross -O ~/bin/make.cross
chmod +x ~/bin/make.cross
git checkout 794797e827272a2e9dc8ac1bae63b1ac427b015d
# save the attached .config to linux build tree
GCC_VERSION=9.2.0 make.cross ARCH=nds32
If you fix the issue, kindly add following tag
Reported-by: kbuild test robot <lkp(a)intel.com>
All errors (new ones prefixed by >>):
In file included from arch/nds32/include/asm/pgtable.h:8,
from include/linux/mm.h:99,
from mm/memory.c:43:
mm/memory.c: In function 'copy_pmd_range':
>> mm/memory.c:854:22: error: passing argument 1 of '__pmd_alloc' from incompatible pointer type [-Werror=incompatible-pointer-types]
854 | dst_pmd = pmd_alloc(dst_mm, dst_pud, addr);
| ^~~~~~
| |
| struct mm_struct *
include/asm-generic/4level-fixup.h:16:46: note: in definition of macro 'pmd_alloc'
16 | ((unlikely(pgd_none(*(pud))) && __pmd_alloc(mm, pud, address))? \
| ^~
In file included from mm/memory.c:43:
include/linux/mm.h:1786:48: note: expected 'struct pg_table *' but argument is of type 'struct mm_struct *'
1786 | static inline int __pmd_alloc(struct pg_table *pgt, pud_t *pud,
| ~~~~~~~~~~~~~~~~~^~~
In file included from arch/nds32/include/asm/pgtable.h:8,
from include/linux/mm.h:99,
from mm/memory.c:43:
mm/memory.c: In function '__get_locked_pte':
mm/memory.c:1407:18: error: passing argument 1 of '__pmd_alloc' from incompatible pointer type [-Werror=incompatible-pointer-types]
1407 | pmd = pmd_alloc(mm, pud, addr);
| ^~
| |
| struct mm_struct *
include/asm-generic/4level-fixup.h:16:46: note: in definition of macro 'pmd_alloc'
16 | ((unlikely(pgd_none(*(pud))) && __pmd_alloc(mm, pud, address))? \
| ^~
In file included from mm/memory.c:43:
include/linux/mm.h:1786:48: note: expected 'struct pg_table *' but argument is of type 'struct mm_struct *'
1786 | static inline int __pmd_alloc(struct pg_table *pgt, pud_t *pud,
| ~~~~~~~~~~~~~~~~~^~~
In file included from arch/nds32/include/asm/pgtable.h:8,
from include/linux/mm.h:99,
from mm/memory.c:43:
mm/memory.c: In function 'remap_pmd_range':
mm/memory.c:1826:18: error: passing argument 1 of '__pmd_alloc' from incompatible pointer type [-Werror=incompatible-pointer-types]
1826 | pmd = pmd_alloc(mm, pud, addr);
| ^~
| |
| struct mm_struct *
include/asm-generic/4level-fixup.h:16:46: note: in definition of macro 'pmd_alloc'
16 | ((unlikely(pgd_none(*(pud))) && __pmd_alloc(mm, pud, address))? \
| ^~
In file included from mm/memory.c:43:
include/linux/mm.h:1786:48: note: expected 'struct pg_table *' but argument is of type 'struct mm_struct *'
1786 | static inline int __pmd_alloc(struct pg_table *pgt, pud_t *pud,
| ~~~~~~~~~~~~~~~~~^~~
In file included from arch/nds32/include/asm/pgtable.h:8,
from include/linux/mm.h:99,
from mm/memory.c:43:
mm/memory.c: In function 'apply_to_pmd_range':
mm/memory.c:2045:18: error: passing argument 1 of '__pmd_alloc' from incompatible pointer type [-Werror=incompatible-pointer-types]
2045 | pmd = pmd_alloc(mm, pud, addr);
| ^~
| |
| struct mm_struct *
include/asm-generic/4level-fixup.h:16:46: note: in definition of macro 'pmd_alloc'
16 | ((unlikely(pgd_none(*(pud))) && __pmd_alloc(mm, pud, address))? \
| ^~
In file included from mm/memory.c:43:
include/linux/mm.h:1786:48: note: expected 'struct pg_table *' but argument is of type 'struct mm_struct *'
1786 | static inline int __pmd_alloc(struct pg_table *pgt, pud_t *pud,
| ~~~~~~~~~~~~~~~~~^~~
In file included from arch/nds32/include/asm/pgtable.h:8,
from include/linux/mm.h:99,
from mm/memory.c:43:
mm/memory.c: In function '__handle_mm_fault':
mm/memory.c:3940:22: error: passing argument 1 of '__pmd_alloc' from incompatible pointer type [-Werror=incompatible-pointer-types]
3940 | vmf.pmd = pmd_alloc(mm, vmf.pud, address);
| ^~
| |
| struct mm_struct *
include/asm-generic/4level-fixup.h:16:46: note: in definition of macro 'pmd_alloc'
16 | ((unlikely(pgd_none(*(pud))) && __pmd_alloc(mm, pud, address))? \
| ^~
In file included from mm/memory.c:43:
include/linux/mm.h:1786:48: note: expected 'struct pg_table *' but argument is of type 'struct mm_struct *'
1786 | static inline int __pmd_alloc(struct pg_table *pgt, pud_t *pud,
| ~~~~~~~~~~~~~~~~~^~~
cc1: some warnings being treated as errors
--
In file included from arch/nds32/include/asm/pgtable.h:8,
from include/linux/mm.h:99,
from mm/mremap.c:11:
mm/mremap.c: In function 'alloc_new_pmd':
>> mm/mremap.c:75:18: error: passing argument 1 of '__pmd_alloc' from incompatible pointer type [-Werror=incompatible-pointer-types]
75 | pmd = pmd_alloc(mm, pud, addr);
| ^~
| |
| struct mm_struct *
include/asm-generic/4level-fixup.h:16:46: note: in definition of macro 'pmd_alloc'
16 | ((unlikely(pgd_none(*(pud))) && __pmd_alloc(mm, pud, address))? \
| ^~
In file included from mm/mremap.c:11:
include/linux/mm.h:1786:48: note: expected 'struct pg_table *' but argument is of type 'struct mm_struct *'
1786 | static inline int __pmd_alloc(struct pg_table *pgt, pud_t *pud,
| ~~~~~~~~~~~~~~~~~^~~
cc1: some warnings being treated as errors
--
In file included from arch/nds32/include/asm/pgtable.h:8,
from include/linux/mm.h:99,
from mm/vmalloc.c:13:
mm/vmalloc.c: In function 'vmap_pmd_range':
>> mm/vmalloc.c:169:18: error: passing argument 1 of '__pmd_alloc' from incompatible pointer type [-Werror=incompatible-pointer-types]
169 | pmd = pmd_alloc(&init_mm, pud, addr);
| ^~~~~~~~
| |
| struct mm_struct *
include/asm-generic/4level-fixup.h:16:46: note: in definition of macro 'pmd_alloc'
16 | ((unlikely(pgd_none(*(pud))) && __pmd_alloc(mm, pud, address))? \
| ^~
In file included from mm/vmalloc.c:13:
include/linux/mm.h:1786:48: note: expected 'struct pg_table *' but argument is of type 'struct mm_struct *'
1786 | static inline int __pmd_alloc(struct pg_table *pgt, pud_t *pud,
| ~~~~~~~~~~~~~~~~~^~~
cc1: some warnings being treated as errors
--
In file included from arch/nds32/include/asm/pgtable.h:8,
from include/linux/mm.h:99,
from lib/ioremap.c:10:
lib/ioremap.c: In function 'ioremap_pmd_range':
>> lib/ioremap.c:109:18: error: passing argument 1 of '__pmd_alloc' from incompatible pointer type [-Werror=incompatible-pointer-types]
109 | pmd = pmd_alloc(&init_mm, pud, addr);
| ^~~~~~~~
| |
| struct mm_struct *
include/asm-generic/4level-fixup.h:16:46: note: in definition of macro 'pmd_alloc'
16 | ((unlikely(pgd_none(*(pud))) && __pmd_alloc(mm, pud, address))? \
| ^~
In file included from lib/ioremap.c:10:
include/linux/mm.h:1786:48: note: expected 'struct pg_table *' but argument is of type 'struct mm_struct *'
1786 | static inline int __pmd_alloc(struct pg_table *pgt, pud_t *pud,
| ~~~~~~~~~~~~~~~~~^~~
cc1: some warnings being treated as errors
vim +/__pmd_alloc +854 mm/memory.c
^1da177e4c3f41 Linus Torvalds 2005-04-16 846
^1da177e4c3f41 Linus Torvalds 2005-04-16 847 static inline int copy_pmd_range(struct mm_struct *dst_mm, struct mm_struct *src_mm,
^1da177e4c3f41 Linus Torvalds 2005-04-16 848 pud_t *dst_pud, pud_t *src_pud, struct vm_area_struct *vma,
^1da177e4c3f41 Linus Torvalds 2005-04-16 849 unsigned long addr, unsigned long end)
^1da177e4c3f41 Linus Torvalds 2005-04-16 850 {
^1da177e4c3f41 Linus Torvalds 2005-04-16 851 pmd_t *src_pmd, *dst_pmd;
^1da177e4c3f41 Linus Torvalds 2005-04-16 852 unsigned long next;
^1da177e4c3f41 Linus Torvalds 2005-04-16 853
^1da177e4c3f41 Linus Torvalds 2005-04-16 @854 dst_pmd = pmd_alloc(dst_mm, dst_pud, addr);
^1da177e4c3f41 Linus Torvalds 2005-04-16 855 if (!dst_pmd)
^1da177e4c3f41 Linus Torvalds 2005-04-16 856 return -ENOMEM;
^1da177e4c3f41 Linus Torvalds 2005-04-16 857 src_pmd = pmd_offset(src_pud, addr);
^1da177e4c3f41 Linus Torvalds 2005-04-16 858 do {
^1da177e4c3f41 Linus Torvalds 2005-04-16 859 next = pmd_addr_end(addr, end);
84c3fc4e9c563d Zi Yan 2017-09-08 860 if (is_swap_pmd(*src_pmd) || pmd_trans_huge(*src_pmd)
84c3fc4e9c563d Zi Yan 2017-09-08 861 || pmd_devmap(*src_pmd)) {
71e3aac0724ffe Andrea Arcangeli 2011-01-13 862 int err;
a00cc7d9dd93d6 Matthew Wilcox 2017-02-24 863 VM_BUG_ON_VMA(next-addr != HPAGE_PMD_SIZE, vma);
71e3aac0724ffe Andrea Arcangeli 2011-01-13 864 err = copy_huge_pmd(dst_mm, src_mm,
71e3aac0724ffe Andrea Arcangeli 2011-01-13 865 dst_pmd, src_pmd, addr, vma);
71e3aac0724ffe Andrea Arcangeli 2011-01-13 866 if (err == -ENOMEM)
71e3aac0724ffe Andrea Arcangeli 2011-01-13 867 return -ENOMEM;
71e3aac0724ffe Andrea Arcangeli 2011-01-13 868 if (!err)
71e3aac0724ffe Andrea Arcangeli 2011-01-13 869 continue;
71e3aac0724ffe Andrea Arcangeli 2011-01-13 870 /* fall through */
71e3aac0724ffe Andrea Arcangeli 2011-01-13 871 }
^1da177e4c3f41 Linus Torvalds 2005-04-16 872 if (pmd_none_or_clear_bad(src_pmd))
^1da177e4c3f41 Linus Torvalds 2005-04-16 873 continue;
^1da177e4c3f41 Linus Torvalds 2005-04-16 874 if (copy_pte_range(dst_mm, src_mm, dst_pmd, src_pmd,
^1da177e4c3f41 Linus Torvalds 2005-04-16 875 vma, addr, next))
^1da177e4c3f41 Linus Torvalds 2005-04-16 876 return -ENOMEM;
^1da177e4c3f41 Linus Torvalds 2005-04-16 877 } while (dst_pmd++, src_pmd++, addr = next, addr != end);
^1da177e4c3f41 Linus Torvalds 2005-04-16 878 return 0;
^1da177e4c3f41 Linus Torvalds 2005-04-16 879 }
^1da177e4c3f41 Linus Torvalds 2005-04-16 880
:::::: The code at line 854 was first introduced by commit
:::::: 1da177e4c3f41524e886b7f1b8a0c1fc7321cac2 Linux-2.6.12-rc2
:::::: TO: Linus Torvalds <torvalds(a)ppc970.osdl.org>
:::::: CC: Linus Torvalds <torvalds(a)ppc970.osdl.org>
---
0-DAY kernel test infrastructure Open Source Technology Center
https://lists.01.org/hyperkitty/list/kbuild-all@lists.01.org Intel Corporation
2 years, 3 months
[rppt:pg_table/v0.0 17/18] include/linux/asi.h:20:25: error: unknown type name 'phys_addr_t'
by kbuild test robot
tree: https://git.kernel.org/pub/scm/linux/kernel/git/rppt/linux.git pg_table/v0.0
head: fd150c5a9ef6e3e43818825c69a46de2b427dedf
commit: 04c7c7a07774d46bb8749ac2b2512b0a19517d61 [17/18] asi: add basic functionality for page table cloning
config: c6x-allyesconfig (attached as .config)
compiler: c6x-elf-gcc (GCC) 7.5.0
reproduce:
wget https://raw.githubusercontent.com/intel/lkp-tests/master/sbin/make.cross -O ~/bin/make.cross
chmod +x ~/bin/make.cross
git checkout 04c7c7a07774d46bb8749ac2b2512b0a19517d61
# save the attached .config to linux build tree
GCC_VERSION=7.5.0 make.cross ARCH=c6x
If you fix the issue, kindly add following tag
Reported-by: kbuild test robot <lkp(a)intel.com>
All error/warnings (new ones prefixed by >>):
In file included from <command-line>:0:0:
>> include/linux/asi.h:14:32: warning: 'struct pg_table' declared inside parameter list will not be visible outside of this definition or declaration
int asi_clone_pgd_range(struct pg_table *dst_pt,
^~~~~~~~
>> include/linux/asi.h:20:25: error: unknown type name 'phys_addr_t'
unsigned long virt, phys_addr_t phys,
^~~~~~~~~~~
>> include/linux/asi.h:21:5: error: unknown type name 'pgprot_t'
pgprot_t prot, int nr_pages);
^~~~~~~~
include/linux/asi.h:24:31: error: unknown type name 'phys_addr_t'
unsigned long virt, phys_addr_t phys,
^~~~~~~~~~~
include/linux/asi.h:25:11: error: unknown type name 'pgprot_t'
pgprot_t prot)
^~~~~~~~
vim +/phys_addr_t +20 include/linux/asi.h
13
> 14 int asi_clone_pgd_range(struct pg_table *dst_pt,
15 struct pg_table *src_pt,
16 unsigned long addr, unsigned long end,
17 enum asi_clone_level level);
18
19 int asi_map_range(struct pg_table *pgt,
> 20 unsigned long virt, phys_addr_t phys,
> 21 pgprot_t prot, int nr_pages);
22
---
0-DAY kernel test infrastructure Open Source Technology Center
https://lists.01.org/hyperkitty/list/kbuild-all@lists.01.org Intel Corporation
2 years, 3 months
[zen-kernel-zen-kernel:5.5/muqss 22/22] kernel/sched/wait.c:14:0: warning: "WF_MIGRATED" redefined
by kbuild test robot
tree: https://github.com/zen-kernel/zen-kernel 5.5/muqss
head: bf569053d0fe08b3615793a0105afff3d28f3676
commit: bf569053d0fe08b3615793a0105afff3d28f3676 [22/22] muqss: Re-define WF_* wake flags in wait.c
config: i386-tinyconfig (attached as .config)
compiler: gcc-7 (Debian 7.5.0-3) 7.5.0
reproduce:
git checkout bf569053d0fe08b3615793a0105afff3d28f3676
# save the attached .config to linux build tree
make ARCH=i386
If you fix the issue, kindly add following tag
Reported-by: kbuild test robot <lkp(a)intel.com>
All warnings (new ones prefixed by >>):
>> kernel/sched/wait.c:14:0: warning: "WF_MIGRATED" redefined
#define WF_MIGRATED 0x04 /* internal use, task got migrated */
In file included from kernel/sched/wait.c:7:0:
kernel/sched/sched.h:1659:0: note: this is the location of the previous definition
#define WF_MIGRATED 0x4 /* Internal use, task got migrated */
vim +/WF_MIGRATED +14 kernel/sched/wait.c
8
9 /*
10 * wake flags
11 */
12 #define WF_SYNC 0x01 /* waker goes to sleep after wakeup */
13 #define WF_FORK 0x02 /* child wakeup after fork */
> 14 #define WF_MIGRATED 0x04 /* internal use, task got migrated */
15
---
0-DAY kernel test infrastructure Open Source Technology Center
https://lists.01.org/hyperkitty/list/kbuild-all@lists.01.org Intel Corporation
2 years, 3 months
[rppt:pg_table/v0.0 11/18] mm/memory.c:430:3: error: implicit declaration of function '_pmd_populate'; did you mean '_pud_populate'?
by kbuild test robot
tree: https://git.kernel.org/pub/scm/linux/kernel/git/rppt/linux.git pg_table/v0.0
head: fd150c5a9ef6e3e43818825c69a46de2b427dedf
commit: a28a3e30c8e9b58a6da1d5e6a4803c5580e93ce5 [11/18] mm: enable pte allocations for pg_table
config: riscv-allnoconfig (attached as .config)
compiler: riscv64-linux-gcc (GCC) 7.5.0
reproduce:
wget https://raw.githubusercontent.com/intel/lkp-tests/master/sbin/make.cross -O ~/bin/make.cross
chmod +x ~/bin/make.cross
git checkout a28a3e30c8e9b58a6da1d5e6a4803c5580e93ce5
# save the attached .config to linux build tree
GCC_VERSION=7.5.0 make.cross ARCH=riscv
If you fix the issue, kindly add following tag
Reported-by: kbuild test robot <lkp(a)intel.com>
All errors (new ones prefixed by >>):
mm/memory.c: In function '__pte_alloc':
>> mm/memory.c:430:3: error: implicit declaration of function '_pmd_populate'; did you mean '_pud_populate'? [-Werror=implicit-function-declaration]
_pmd_populate(pgt, pmd, new);
^~~~~~~~~~~~~
_pud_populate
cc1: some warnings being treated as errors
vim +430 mm/memory.c
404
405 int __pte_alloc(struct pg_table *pgt, pmd_t *pmd)
406 {
407 spinlock_t *ptl;
408 pgtable_t new = pte_alloc_one(pgt);
409 if (!new)
410 return -ENOMEM;
411
412 /*
413 * Ensure all pte setup (eg. pte page lock and page clearing) are
414 * visible before the pte is made visible to other CPUs by being
415 * put into page tables.
416 *
417 * The other side of the story is the pointer chasing in the page
418 * table walking code (when walking the page table without locking;
419 * ie. most of the time). Fortunately, these data accesses consist
420 * of a chain of data-dependent loads, meaning most CPUs (alpha
421 * being the notable exception) will already guarantee loads are
422 * seen in-order. See the alpha page table accessors for the
423 * smp_read_barrier_depends() barriers in page table walking code.
424 */
425 smp_wmb(); /* Could be smp_wmb__xxx(before|after)_spin_lock */
426
427 ptl = _pmd_lock(pgt, pmd);
428 if (likely(pmd_none(*pmd))) { /* Has another populated it ? */
429 mm_inc_nr_ptes(pgt);
> 430 _pmd_populate(pgt, pmd, new);
431 new = NULL;
432 }
433 spin_unlock(ptl);
434 if (new)
435 pte_free(pgt, new);
436 return 0;
437 }
438
---
0-DAY kernel test infrastructure Open Source Technology Center
https://lists.01.org/hyperkitty/list/kbuild-all@lists.01.org Intel Corporation
2 years, 3 months
[rppt:pg_table/v0.0 8/18] mm/memory.c:4074:3: error: implicit declaration of function '_pgd_populate'; did you mean '__pgd_populate'?
by kbuild test robot
tree: https://git.kernel.org/pub/scm/linux/kernel/git/rppt/linux.git pg_table/v0.0
head: fd150c5a9ef6e3e43818825c69a46de2b427dedf
commit: 582d02322eb4f4d2d3903c0967216bc6b671164f [8/18] mm: enable pud allocations for pg_table
config: sparc64-randconfig-a001-20200202 (attached as .config)
compiler: sparc64-linux-gcc (GCC) 7.5.0
reproduce:
wget https://raw.githubusercontent.com/intel/lkp-tests/master/sbin/make.cross -O ~/bin/make.cross
chmod +x ~/bin/make.cross
git checkout 582d02322eb4f4d2d3903c0967216bc6b671164f
# save the attached .config to linux build tree
GCC_VERSION=7.5.0 make.cross ARCH=sparc64
If you fix the issue, kindly add following tag
Reported-by: kbuild test robot <lkp(a)intel.com>
All errors (new ones prefixed by >>):
mm/memory.c: In function '__pud_alloc':
>> mm/memory.c:4074:3: error: implicit declaration of function '_pgd_populate'; did you mean '__pgd_populate'? [-Werror=implicit-function-declaration]
_pgd_populate(pgt, p4d, new);
^~~~~~~~~~~~~
__pgd_populate
cc1: some warnings being treated as errors
vim +4074 mm/memory.c
4050
4051 #ifndef __PAGETABLE_PUD_FOLDED
4052 /*
4053 * Allocate page upper directory.
4054 * We've already handled the fast-path in-line.
4055 */
4056 int __pud_alloc(struct pg_table *pgt, p4d_t *p4d, unsigned long address)
4057 {
4058 pud_t *new = pud_alloc_one(pgt, address);
4059 if (!new)
4060 return -ENOMEM;
4061
4062 smp_wmb(); /* See comment in __pte_alloc */
4063
4064 spin_lock(&pgt->page_table_lock);
4065 #ifndef __ARCH_HAS_5LEVEL_HACK
4066 if (!p4d_present(*p4d)) {
4067 mm_inc_nr_puds(pgt);
4068 _p4d_populate(pgt, p4d, new);
4069 } else /* Another has populated it */
4070 pud_free(new);
4071 #else
4072 if (!pgd_present(*p4d)) {
4073 mm_inc_nr_puds(pgt);
> 4074 _pgd_populate(pgt, p4d, new);
4075 } else /* Another has populated it */
4076 pud_free(new);
4077 #endif /* __ARCH_HAS_5LEVEL_HACK */
4078 spin_unlock(&pgt->page_table_lock);
4079 return 0;
4080 }
4081 #endif /* __PAGETABLE_PUD_FOLDED */
4082
---
0-DAY kernel test infrastructure Open Source Technology Center
https://lists.01.org/hyperkitty/list/kbuild-all@lists.01.org Intel Corporation
2 years, 3 months
drivers/gpu/drm/drm_gem_shmem_helper.c:261:17: error: implicit declaration of function 'pgprot_writecombine'
by kbuild test robot
Hi Thomas,
FYI, the error/warning still remains.
tree: https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git master
head: 26dca6dbd62d74a5012cafab6b2d6d65a01ea69c
commit: 08b22f65b309649057edfbae1d8772b04210b486 drm/udl: Switch to SHMEM
date: 3 months ago
config: m68k-randconfig-a001-20200201 (attached as .config)
compiler: m68k-linux-gcc (GCC) 7.5.0
reproduce:
wget https://raw.githubusercontent.com/intel/lkp-tests/master/sbin/make.cross -O ~/bin/make.cross
chmod +x ~/bin/make.cross
git checkout 08b22f65b309649057edfbae1d8772b04210b486
# save the attached .config to linux build tree
GCC_VERSION=7.5.0 make.cross ARCH=m68k
If you fix the issue, kindly add following tag
Reported-by: kbuild test robot <lkp(a)intel.com>
All errors (new ones prefixed by >>):
drivers/gpu/drm/drm_gem_shmem_helper.c: In function 'drm_gem_shmem_vmap_locked':
>> drivers/gpu/drm/drm_gem_shmem_helper.c:261:17: error: implicit declaration of function 'pgprot_writecombine' [-Werror=implicit-function-declaration]
VM_MAP, pgprot_writecombine(PAGE_KERNEL));
^~~~~~~~~~~~~~~~~~~
>> drivers/gpu/drm/drm_gem_shmem_helper.c:261:17: error: incompatible type for argument 4 of 'vmap'
In file included from include/asm-generic/io.h:887:0,
from arch/m68k/include/asm/io.h:11,
from arch/m68k/include/asm/pgtable_no.h:14,
from arch/m68k/include/asm/pgtable.h:3,
from include/linux/mm.h:99,
from include/linux/scatterlist.h:8,
from include/linux/dma-buf.h:18,
from drivers/gpu/drm/drm_gem_shmem_helper.c:6:
include/linux/vmalloc.h:119:14: note: expected 'pgprot_t {aka struct <anonymous>}' but argument is of type 'int'
extern void *vmap(struct page **pages, unsigned int count,
^~~~
drivers/gpu/drm/drm_gem_shmem_helper.c: In function 'drm_gem_shmem_mmap':
>> drivers/gpu/drm/drm_gem_shmem_helper.c:540:20: error: incompatible types when assigning to type 'pgprot_t {aka struct <anonymous>}' from type 'int'
vma->vm_page_prot = pgprot_writecombine(vm_get_page_prot(vma->vm_flags));
^
cc1: some warnings being treated as errors
vim +/pgprot_writecombine +261 drivers/gpu/drm/drm_gem_shmem_helper.c
2194a63a818db7 Noralf Trønnes 2019-03-12 244
2194a63a818db7 Noralf Trønnes 2019-03-12 245 static void *drm_gem_shmem_vmap_locked(struct drm_gem_shmem_object *shmem)
2194a63a818db7 Noralf Trønnes 2019-03-12 246 {
2194a63a818db7 Noralf Trønnes 2019-03-12 247 struct drm_gem_object *obj = &shmem->base;
2194a63a818db7 Noralf Trønnes 2019-03-12 248 int ret;
2194a63a818db7 Noralf Trønnes 2019-03-12 249
2194a63a818db7 Noralf Trønnes 2019-03-12 250 if (shmem->vmap_use_count++ > 0)
2194a63a818db7 Noralf Trønnes 2019-03-12 251 return shmem->vaddr;
2194a63a818db7 Noralf Trønnes 2019-03-12 252
2194a63a818db7 Noralf Trønnes 2019-03-12 253 ret = drm_gem_shmem_get_pages(shmem);
2194a63a818db7 Noralf Trønnes 2019-03-12 254 if (ret)
2194a63a818db7 Noralf Trønnes 2019-03-12 255 goto err_zero_use;
2194a63a818db7 Noralf Trønnes 2019-03-12 256
2194a63a818db7 Noralf Trønnes 2019-03-12 257 if (obj->import_attach)
2194a63a818db7 Noralf Trønnes 2019-03-12 258 shmem->vaddr = dma_buf_vmap(obj->import_attach->dmabuf);
2194a63a818db7 Noralf Trønnes 2019-03-12 259 else
be7d9f05c53e6f Boris Brezillon 2019-05-29 260 shmem->vaddr = vmap(shmem->pages, obj->size >> PAGE_SHIFT,
be7d9f05c53e6f Boris Brezillon 2019-05-29 @261 VM_MAP, pgprot_writecombine(PAGE_KERNEL));
2194a63a818db7 Noralf Trønnes 2019-03-12 262
2194a63a818db7 Noralf Trønnes 2019-03-12 263 if (!shmem->vaddr) {
2194a63a818db7 Noralf Trønnes 2019-03-12 264 DRM_DEBUG_KMS("Failed to vmap pages\n");
2194a63a818db7 Noralf Trønnes 2019-03-12 265 ret = -ENOMEM;
2194a63a818db7 Noralf Trønnes 2019-03-12 266 goto err_put_pages;
2194a63a818db7 Noralf Trønnes 2019-03-12 267 }
2194a63a818db7 Noralf Trønnes 2019-03-12 268
2194a63a818db7 Noralf Trønnes 2019-03-12 269 return shmem->vaddr;
2194a63a818db7 Noralf Trønnes 2019-03-12 270
2194a63a818db7 Noralf Trønnes 2019-03-12 271 err_put_pages:
2194a63a818db7 Noralf Trønnes 2019-03-12 272 drm_gem_shmem_put_pages(shmem);
2194a63a818db7 Noralf Trønnes 2019-03-12 273 err_zero_use:
2194a63a818db7 Noralf Trønnes 2019-03-12 274 shmem->vmap_use_count = 0;
2194a63a818db7 Noralf Trønnes 2019-03-12 275
2194a63a818db7 Noralf Trønnes 2019-03-12 276 return ERR_PTR(ret);
2194a63a818db7 Noralf Trønnes 2019-03-12 277 }
2194a63a818db7 Noralf Trønnes 2019-03-12 278
:::::: The code at line 261 was first introduced by commit
:::::: be7d9f05c53e6fc88525f8e55cf2dae937761799 drm/gem_shmem: Use a writecombine mapping for ->vaddr
:::::: TO: Boris Brezillon <boris.brezillon(a)collabora.com>
:::::: CC: Rob Herring <robh(a)kernel.org>
---
0-DAY kernel test infrastructure Open Source Technology Center
https://lists.01.org/hyperkitty/list/kbuild-all@lists.01.org Intel Corporation
2 years, 3 months