tree:
https://git.kernel.org/pub/scm/linux/kernel/git/linusw/linux-integrator.git
kernel-in-vmalloc-v5.12-rc1
head: 7b99ca2d1494c9431f36164db472b70852ad9bf6
commit: 7b99ca2d1494c9431f36164db472b70852ad9bf6 [6/6] ARM: kernel in vmalloc
config: arm-randconfig-r005-20210412 (attached as .config)
compiler: arm-linux-gnueabi-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://git.kernel.org/pub/scm/linux/kernel/git/linusw/linux-integrator.g...
git remote add arm-integrator
https://git.kernel.org/pub/scm/linux/kernel/git/linusw/linux-integrator.git
git fetch --no-tags arm-integrator kernel-in-vmalloc-v5.12-rc1
git checkout 7b99ca2d1494c9431f36164db472b70852ad9bf6
# save the attached .config to linux build tree
COMPILER_INSTALL_PATH=$HOME/0day COMPILER=gcc-9.3.0 make.cross ARCH=arm
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 >>):
In file included from arch/arm/include/asm/memory.h:455,
from arch/arm/include/asm/page.h:160,
from arch/arm/include/asm/thread_info.h:14,
from include/linux/thread_info.h:58,
from include/asm-generic/preempt.h:5,
from ./arch/arm/include/generated/asm/preempt.h:1,
from include/linux/preempt.h:78,
from include/linux/spinlock.h:51,
from include/linux/mmzone.h:8,
from include/linux/gfp.h:6,
from lib/test_free_pages.c:10:
lib/test_free_pages.c: In function 'test_free_pages':
> lib/test_free_pages.c:20:36: warning: passing argument 1 of
'virt_to_pfn' makes pointer from integer without a cast [-Wint-conversion]
20 | struct page *page = virt_to_page(addr);
| ^~~~
| |
| long unsigned int
include/asm-generic/memory_model.h:33:41: note: in definition of macro
'__pfn_to_page'
33 | #define __pfn_to_page(pfn) (mem_map + ((pfn) - ARCH_PFN_OFFSET))
| ^~~
lib/test_free_pages.c:20:23: note: in expansion of macro 'virt_to_page'
20 | struct page *page = virt_to_page(addr);
| ^~~~~~~~~~~~
In file included from arch/arm/include/asm/page.h:160,
from arch/arm/include/asm/thread_info.h:14,
from include/linux/thread_info.h:58,
from include/asm-generic/preempt.h:5,
from ./arch/arm/include/generated/asm/preempt.h:1,
from include/linux/preempt.h:78,
from include/linux/spinlock.h:51,
from include/linux/mmzone.h:8,
from include/linux/gfp.h:6,
from lib/test_free_pages.c:10:
arch/arm/include/asm/memory.h:331:53: note: expected 'const void *' but
argument is of type 'long unsigned int'
331 | static inline unsigned long virt_to_pfn(const void *kaddr)
| ~~~~~~~~~~~~^~~~~
vim +/virt_to_pfn +20 lib/test_free_pages.c
e320d3012d25b1 Matthew Wilcox (Oracle 2020-10-13 13)
e320d3012d25b1 Matthew Wilcox (Oracle 2020-10-13 14) static void test_free_pages(gfp_t
gfp)
e320d3012d25b1 Matthew Wilcox (Oracle 2020-10-13 15) {
e320d3012d25b1 Matthew Wilcox (Oracle 2020-10-13 16) unsigned int i;
e320d3012d25b1 Matthew Wilcox (Oracle 2020-10-13 17)
e320d3012d25b1 Matthew Wilcox (Oracle 2020-10-13 18) for (i = 0; i < 1000 * 1000;
i++) {
e320d3012d25b1 Matthew Wilcox (Oracle 2020-10-13 19) unsigned long addr =
__get_free_pages(gfp, 3);
e320d3012d25b1 Matthew Wilcox (Oracle 2020-10-13 @20) struct page *page =
virt_to_page(addr);
e320d3012d25b1 Matthew Wilcox (Oracle 2020-10-13 21)
e320d3012d25b1 Matthew Wilcox (Oracle 2020-10-13 22) /* Simulate page cache getting a
speculative reference */
e320d3012d25b1 Matthew Wilcox (Oracle 2020-10-13 23) get_page(page);
e320d3012d25b1 Matthew Wilcox (Oracle 2020-10-13 24) free_pages(addr, 3);
e320d3012d25b1 Matthew Wilcox (Oracle 2020-10-13 25) put_page(page);
e320d3012d25b1 Matthew Wilcox (Oracle 2020-10-13 26) }
e320d3012d25b1 Matthew Wilcox (Oracle 2020-10-13 27) }
e320d3012d25b1 Matthew Wilcox (Oracle 2020-10-13 28)
:::::: The code at line 20 was first introduced by commit
:::::: e320d3012d25b1fb5f3df4edb7bd44a1c362ec10 mm/page_alloc.c: fix freeing non-compound
pages
:::::: TO: Matthew Wilcox (Oracle) <willy(a)infradead.org>
:::::: CC: Linus Torvalds <torvalds(a)linux-foundation.org>
---
0-DAY CI Kernel Test Service, Intel Corporation
https://lists.01.org/hyperkitty/list/kbuild-all@lists.01.org