[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <202509030338.DlQJTxIk-lkp@intel.com>
Date: Wed, 3 Sep 2025 04:09:08 +0800
From: kernel test robot <lkp@...el.com>
To: Ankur Arora <ankur.a.arora@...cle.com>, linux-kernel@...r.kernel.org,
linux-mm@...ck.org, x86@...nel.org
Cc: oe-kbuild-all@...ts.linux.dev, akpm@...ux-foundation.org,
david@...hat.com, bp@...en8.de, dave.hansen@...ux.intel.com,
hpa@...or.com, mingo@...hat.com, mjguzik@...il.com, luto@...nel.org,
peterz@...radead.org, acme@...nel.org, namhyung@...nel.org,
tglx@...utronix.de, willy@...radead.org, raghavendra.kt@....com,
boris.ostrovsky@...cle.com, konrad.wilk@...cle.com,
ankur.a.arora@...cle.com
Subject: Re: [PATCH v6 11/15] mm: define clear_pages(), clear_user_pages()
Hi Ankur,
kernel test robot noticed the following build warnings:
[auto build test WARNING on akpm-mm/mm-everything]
url: https://github.com/intel-lab-lkp/linux/commits/Ankur-Arora/perf-bench-mem-Remove-repetition-around-time-measurement/20250902-161417
base: https://git.kernel.org/pub/scm/linux/kernel/git/akpm/mm.git mm-everything
patch link: https://lore.kernel.org/r/20250902080816.3715913-12-ankur.a.arora%40oracle.com
patch subject: [PATCH v6 11/15] mm: define clear_pages(), clear_user_pages()
config: sparc-defconfig (https://download.01.org/0day-ci/archive/20250903/202509030338.DlQJTxIk-lkp@intel.com/config)
compiler: sparc-linux-gcc (GCC) 15.1.0
reproduce (this is a W=1 build): (https://download.01.org/0day-ci/archive/20250903/202509030338.DlQJTxIk-lkp@intel.com/reproduce)
If you fix the issue in a separate patch/commit (i.e. not just a new version of
the same patch/commit), kindly add following tags
| Reported-by: kernel test robot <lkp@...el.com>
| Closes: https://lore.kernel.org/oe-kbuild-all/202509030338.DlQJTxIk-lkp@intel.com/
All warnings (new ones prefixed by >>):
In file included from arch/sparc/include/asm/page.h:8,
from arch/sparc/include/asm/string_32.h:13,
from arch/sparc/include/asm/string.h:7,
from include/linux/string.h:65,
from include/linux/bitmap.h:13,
from include/linux/cpumask.h:12,
from arch/sparc/include/asm/smp_32.h:15,
from arch/sparc/include/asm/smp.h:7,
from arch/sparc/include/asm/switch_to_32.h:5,
from arch/sparc/include/asm/switch_to.h:7,
from arch/sparc/include/asm/ptrace.h:120,
from arch/sparc/include/asm/thread_info_32.h:19,
from arch/sparc/include/asm/thread_info.h:7,
from include/linux/thread_info.h:60,
from include/asm-generic/preempt.h:5,
from ./arch/sparc/include/generated/asm/preempt.h:1,
from include/linux/preempt.h:79,
from include/linux/spinlock.h:56,
from include/linux/mmzone.h:8,
from include/linux/gfp.h:7,
from include/linux/umh.h:4,
from include/linux/kmod.h:9,
from include/linux/module.h:18,
from init/main.c:18:
include/linux/mm.h: In function 'clear_user_pages':
arch/sparc/include/asm/page_32.h:22:17: error: implicit declaration of function 'sparc_flush_page_to_ram' [-Wimplicit-function-declaration]
22 | sparc_flush_page_to_ram(page); \
| ^~~~~~~~~~~~~~~~~~~~~~~
include/linux/mm.h:3886:17: note: in expansion of macro 'clear_user_page'
3886 | clear_user_page(addr + i * PAGE_SIZE,
| ^~~~~~~~~~~~~~~
In file included from arch/sparc/include/asm/cacheflush.h:11,
from include/linux/cacheflush.h:5,
from include/linux/highmem.h:8,
from include/linux/bvec.h:10,
from include/linux/blk_types.h:10,
from include/linux/writeback.h:13,
from include/linux/memcontrol.h:23,
from include/linux/bpf.h:31,
from include/linux/security.h:35,
from include/linux/perf_event.h:53,
from include/linux/trace_events.h:10,
from include/trace/syscall.h:7,
from include/linux/syscalls.h:95,
from init/main.c:22:
arch/sparc/include/asm/cacheflush_32.h: At top level:
>> arch/sparc/include/asm/cacheflush_32.h:38:6: warning: conflicting types for 'sparc_flush_page_to_ram'; have 'void(struct page *)'
38 | void sparc_flush_page_to_ram(struct page *page);
| ^~~~~~~~~~~~~~~~~~~~~~~
arch/sparc/include/asm/page_32.h:22:17: note: previous implicit declaration of 'sparc_flush_page_to_ram' with type 'void(struct page *)'
22 | sparc_flush_page_to_ram(page); \
| ^~~~~~~~~~~~~~~~~~~~~~~
include/linux/mm.h:3886:17: note: in expansion of macro 'clear_user_page'
3886 | clear_user_page(addr + i * PAGE_SIZE,
| ^~~~~~~~~~~~~~~
vim +38 arch/sparc/include/asm/cacheflush_32.h
f5e706ad886b6a include/asm-sparc/cacheflush_32.h Sam Ravnborg 2008-07-17 19
f5e706ad886b6a include/asm-sparc/cacheflush_32.h Sam Ravnborg 2008-07-17 20 #define copy_to_user_page(vma, page, vaddr, dst, src, len) \
f5e706ad886b6a include/asm-sparc/cacheflush_32.h Sam Ravnborg 2008-07-17 21 do { \
f5e706ad886b6a include/asm-sparc/cacheflush_32.h Sam Ravnborg 2008-07-17 22 flush_cache_page(vma, vaddr, page_to_pfn(page));\
f5e706ad886b6a include/asm-sparc/cacheflush_32.h Sam Ravnborg 2008-07-17 23 memcpy(dst, src, len); \
f5e706ad886b6a include/asm-sparc/cacheflush_32.h Sam Ravnborg 2008-07-17 24 } while (0)
f5e706ad886b6a include/asm-sparc/cacheflush_32.h Sam Ravnborg 2008-07-17 25 #define copy_from_user_page(vma, page, vaddr, dst, src, len) \
f5e706ad886b6a include/asm-sparc/cacheflush_32.h Sam Ravnborg 2008-07-17 26 do { \
f5e706ad886b6a include/asm-sparc/cacheflush_32.h Sam Ravnborg 2008-07-17 27 flush_cache_page(vma, vaddr, page_to_pfn(page));\
f5e706ad886b6a include/asm-sparc/cacheflush_32.h Sam Ravnborg 2008-07-17 28 memcpy(dst, src, len); \
f5e706ad886b6a include/asm-sparc/cacheflush_32.h Sam Ravnborg 2008-07-17 29 } while (0)
f5e706ad886b6a include/asm-sparc/cacheflush_32.h Sam Ravnborg 2008-07-17 30
5d83d66635bb16 arch/sparc/include/asm/cacheflush_32.h David S. Miller 2012-05-13 31 #define __flush_page_to_ram(addr) \
5d83d66635bb16 arch/sparc/include/asm/cacheflush_32.h David S. Miller 2012-05-13 32 sparc32_cachetlb_ops->page_to_ram(addr)
5d83d66635bb16 arch/sparc/include/asm/cacheflush_32.h David S. Miller 2012-05-13 33 #define flush_sig_insns(mm,insn_addr) \
5d83d66635bb16 arch/sparc/include/asm/cacheflush_32.h David S. Miller 2012-05-13 34 sparc32_cachetlb_ops->sig_insns(mm, insn_addr)
5d83d66635bb16 arch/sparc/include/asm/cacheflush_32.h David S. Miller 2012-05-13 35 #define flush_page_for_dma(addr) \
5d83d66635bb16 arch/sparc/include/asm/cacheflush_32.h David S. Miller 2012-05-13 36 sparc32_cachetlb_ops->page_for_dma(addr)
f5e706ad886b6a include/asm-sparc/cacheflush_32.h Sam Ravnborg 2008-07-17 37
f05a68653e56ca arch/sparc/include/asm/cacheflush_32.h Sam Ravnborg 2014-05-16 @38 void sparc_flush_page_to_ram(struct page *page);
665f640294540a arch/sparc/include/asm/cacheflush_32.h Matthew Wilcox (Oracle 2023-08-02 39) void sparc_flush_folio_to_ram(struct folio *folio);
f5e706ad886b6a include/asm-sparc/cacheflush_32.h Sam Ravnborg 2008-07-17 40
--
0-DAY CI Kernel Test Service
https://github.com/intel/lkp-tests/wiki
Powered by blists - more mailing lists