linux-mm.kvack.org archive mirror
 help / color / mirror / Atom feed
* [akpm-mm:mm-new 120/137] include/linux/mm.h:727:16: sparse: sparse: incorrect type in argument 2 (different modifiers)
@ 2025-08-13 16:45 kernel test robot
  0 siblings, 0 replies; only message in thread
From: kernel test robot @ 2025-08-13 16:45 UTC (permalink / raw)
  To: Lorenzo Stoakes
  Cc: oe-kbuild-all, Andrew Morton, Linux Memory Management List,
	Liam R. Howlett

Hi Lorenzo,

FYI, the error/warning was bisected to this commit, please ignore it if it's irrelevant.

tree:   https://git.kernel.org/pub/scm/linux/kernel/git/akpm/mm.git mm-new
head:   694c8e78f486b09137ee3efadae044d01aba971b
commit: 6d303e2d299eaeb3bfd39c8d8c7f79cc474db83b [120/137] mm: convert core mm to mm_flags_*() accessors
config: microblaze-randconfig-r131-20250813 (https://download.01.org/0day-ci/archive/20250814/202508140032.Qirn8BZ3-lkp@intel.com/config)
compiler: microblaze-linux-gcc (GCC) 12.5.0
reproduce: (https://download.01.org/0day-ci/archive/20250814/202508140032.Qirn8BZ3-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@intel.com>
| Closes: https://lore.kernel.org/oe-kbuild-all/202508140032.Qirn8BZ3-lkp@intel.com/

sparse warnings: (new ones prefixed by >>)
   mm/oom_kill.c: note: in included file (through include/linux/rculist.h, include/linux/sched/signal.h, include/linux/oom.h):
   include/linux/rcupdate.h:871:25: sparse: sparse: context imbalance in 'find_lock_task_mm' - wrong count at exit
   mm/oom_kill.c: note: in included file (through include/linux/oom.h):
>> include/linux/mm.h:727:16: sparse: sparse: incorrect type in argument 2 (different modifiers) @@     expected unsigned long const volatile *addr @@     got unsigned long const [noderef] * @@
   include/linux/mm.h:727:16: sparse:     expected unsigned long const volatile *addr
   include/linux/mm.h:727:16: sparse:     got unsigned long const [noderef] *
>> include/linux/mm.h:727:16: sparse: sparse: incorrect type in argument 2 (different modifiers) @@     expected unsigned long const volatile *addr @@     got unsigned long const [noderef] * @@
   include/linux/mm.h:727:16: sparse:     expected unsigned long const volatile *addr
   include/linux/mm.h:727:16: sparse:     got unsigned long const [noderef] *
   mm/oom_kill.c:223:28: sparse: sparse: context imbalance in 'oom_badness' - unexpected unlock
>> include/linux/mm.h:727:16: sparse: sparse: incorrect type in argument 2 (different modifiers) @@     expected unsigned long const volatile *addr @@     got unsigned long const [noderef] * @@
   include/linux/mm.h:727:16: sparse:     expected unsigned long const volatile *addr
   include/linux/mm.h:727:16: sparse:     got unsigned long const [noderef] *
>> include/linux/mm.h:727:16: sparse: sparse: incorrect type in argument 2 (different modifiers) @@     expected unsigned long const volatile *addr @@     got unsigned long const [noderef] * @@
   include/linux/mm.h:727:16: sparse:     expected unsigned long const volatile *addr
   include/linux/mm.h:727:16: sparse:     got unsigned long const [noderef] *
   mm/oom_kill.c:403:9: sparse: sparse: context imbalance in 'dump_task' - unexpected unlock
>> include/linux/mm.h:742:23: sparse: sparse: incorrect type in argument 2 (different modifiers) @@     expected unsigned long volatile *addr @@     got unsigned long [noderef] * @@
   include/linux/mm.h:742:23: sparse:     expected unsigned long volatile *addr
   include/linux/mm.h:742:23: sparse:     got unsigned long [noderef] *
>> include/linux/mm.h:727:16: sparse: sparse: incorrect type in argument 2 (different modifiers) @@     expected unsigned long const volatile *addr @@     got unsigned long const [noderef] * @@
   include/linux/mm.h:727:16: sparse:     expected unsigned long const volatile *addr
   include/linux/mm.h:727:16: sparse:     got unsigned long const [noderef] *
>> include/linux/mm.h:727:16: sparse: sparse: incorrect type in argument 2 (different modifiers) @@     expected unsigned long const volatile *addr @@     got unsigned long const [noderef] * @@
   include/linux/mm.h:727:16: sparse:     expected unsigned long const volatile *addr
   include/linux/mm.h:727:16: sparse:     got unsigned long const [noderef] *
>> include/linux/mm.h:727:16: sparse: sparse: incorrect type in argument 2 (different modifiers) @@     expected unsigned long const volatile *addr @@     got unsigned long const [noderef] * @@
   include/linux/mm.h:727:16: sparse:     expected unsigned long const volatile *addr
   include/linux/mm.h:727:16: sparse:     got unsigned long const [noderef] *
>> include/linux/mm.h:727:16: sparse: sparse: incorrect type in argument 2 (different modifiers) @@     expected unsigned long const volatile *addr @@     got unsigned long const [noderef] * @@
   include/linux/mm.h:727:16: sparse:     expected unsigned long const volatile *addr
   include/linux/mm.h:727:16: sparse:     got unsigned long const [noderef] *
>> include/linux/mm.h:742:23: sparse: sparse: incorrect type in argument 2 (different modifiers) @@     expected unsigned long volatile *addr @@     got unsigned long [noderef] * @@
   include/linux/mm.h:742:23: sparse:     expected unsigned long volatile *addr
   include/linux/mm.h:742:23: sparse:     got unsigned long [noderef] *
>> include/linux/mm.h:727:16: sparse: sparse: incorrect type in argument 2 (different modifiers) @@     expected unsigned long const volatile *addr @@     got unsigned long const [noderef] * @@
   include/linux/mm.h:727:16: sparse:     expected unsigned long const volatile *addr
   include/linux/mm.h:727:16: sparse:     got unsigned long const [noderef] *
>> include/linux/mm.h:727:16: sparse: sparse: incorrect type in argument 2 (different modifiers) @@     expected unsigned long const volatile *addr @@     got unsigned long const [noderef] * @@
   include/linux/mm.h:727:16: sparse:     expected unsigned long const volatile *addr
   include/linux/mm.h:727:16: sparse:     got unsigned long const [noderef] *
   include/linux/mm.h:732:39: sparse: sparse: incorrect type in argument 2 (different modifiers) @@     expected unsigned long volatile *addr @@     got unsigned long [noderef] * @@
   include/linux/mm.h:732:39: sparse:     expected unsigned long volatile *addr
   include/linux/mm.h:732:39: sparse:     got unsigned long [noderef] *
>> include/linux/mm.h:727:16: sparse: sparse: incorrect type in argument 2 (different modifiers) @@     expected unsigned long const volatile *addr @@     got unsigned long const [noderef] * @@
   include/linux/mm.h:727:16: sparse:     expected unsigned long const volatile *addr
   include/linux/mm.h:727:16: sparse:     got unsigned long const [noderef] *
>> include/linux/mm.h:727:16: sparse: sparse: incorrect type in argument 2 (different modifiers) @@     expected unsigned long const volatile *addr @@     got unsigned long const [noderef] * @@
   include/linux/mm.h:727:16: sparse:     expected unsigned long const volatile *addr
   include/linux/mm.h:727:16: sparse:     got unsigned long const [noderef] *
>> include/linux/mm.h:742:23: sparse: sparse: incorrect type in argument 2 (different modifiers) @@     expected unsigned long volatile *addr @@     got unsigned long [noderef] * @@
   include/linux/mm.h:742:23: sparse:     expected unsigned long volatile *addr
   include/linux/mm.h:742:23: sparse:     got unsigned long [noderef] *
   mm/oom_kill.c: note: in included file (through include/linux/rculist.h, include/linux/sched/signal.h, include/linux/oom.h):
   include/linux/rcupdate.h:871:25: sparse: sparse: context imbalance in '__oom_kill_process' - unexpected unlock
   mm/oom_kill.c: note: in included file (through include/linux/oom.h):
>> include/linux/mm.h:727:16: sparse: sparse: incorrect type in argument 2 (different modifiers) @@     expected unsigned long const volatile *addr @@     got unsigned long const [noderef] * @@
   include/linux/mm.h:727:16: sparse:     expected unsigned long const volatile *addr
   include/linux/mm.h:727:16: sparse:     got unsigned long const [noderef] *
>> include/linux/mm.h:727:16: sparse: sparse: incorrect type in argument 2 (different modifiers) @@     expected unsigned long const volatile *addr @@     got unsigned long const [noderef] * @@
   include/linux/mm.h:727:16: sparse:     expected unsigned long const volatile *addr
   include/linux/mm.h:727:16: sparse:     got unsigned long const [noderef] *
>> include/linux/mm.h:727:16: sparse: sparse: incorrect type in argument 2 (different modifiers) @@     expected unsigned long const volatile *addr @@     got unsigned long const [noderef] * @@
   include/linux/mm.h:727:16: sparse:     expected unsigned long const volatile *addr
   include/linux/mm.h:727:16: sparse:     got unsigned long const [noderef] *
>> include/linux/mm.h:727:16: sparse: sparse: incorrect type in argument 2 (different modifiers) @@     expected unsigned long const volatile *addr @@     got unsigned long const [noderef] * @@
   include/linux/mm.h:727:16: sparse:     expected unsigned long const volatile *addr
   include/linux/mm.h:727:16: sparse:     got unsigned long const [noderef] *
   mm/oom_kill.c:1241:20: sparse: sparse: context imbalance in '__se_sys_process_mrelease' - unexpected unlock
--
   mm/gup.c: note: in included file:
>> include/linux/mm.h:727:16: sparse: sparse: incorrect type in argument 2 (different modifiers) @@     expected unsigned long const volatile *addr @@     got unsigned long const [noderef] * @@
   include/linux/mm.h:727:16: sparse:     expected unsigned long const volatile *addr
   include/linux/mm.h:727:16: sparse:     got unsigned long const [noderef] *
>> include/linux/mm.h:727:16: sparse: sparse: incorrect type in argument 2 (different modifiers) @@     expected unsigned long const volatile *addr @@     got unsigned long const [noderef] * @@
   include/linux/mm.h:727:16: sparse:     expected unsigned long const volatile *addr
   include/linux/mm.h:727:16: sparse:     got unsigned long const [noderef] *
>> include/linux/mm.h:742:23: sparse: sparse: incorrect type in argument 2 (different modifiers) @@     expected unsigned long volatile *addr @@     got unsigned long [noderef] * @@
   include/linux/mm.h:742:23: sparse:     expected unsigned long volatile *addr
   include/linux/mm.h:742:23: sparse:     got unsigned long [noderef] *
>> include/linux/mm.h:727:16: sparse: sparse: incorrect type in argument 2 (different modifiers) @@     expected unsigned long const volatile *addr @@     got unsigned long const [noderef] * @@
   include/linux/mm.h:727:16: sparse:     expected unsigned long const volatile *addr
   include/linux/mm.h:727:16: sparse:     got unsigned long const [noderef] *
>> include/linux/mm.h:727:16: sparse: sparse: incorrect type in argument 2 (different modifiers) @@     expected unsigned long const volatile *addr @@     got unsigned long const [noderef] * @@
   include/linux/mm.h:727:16: sparse:     expected unsigned long const volatile *addr
   include/linux/mm.h:727:16: sparse:     got unsigned long const [noderef] *
>> include/linux/mm.h:742:23: sparse: sparse: incorrect type in argument 2 (different modifiers) @@     expected unsigned long volatile *addr @@     got unsigned long [noderef] * @@
   include/linux/mm.h:742:23: sparse:     expected unsigned long volatile *addr
   include/linux/mm.h:742:23: sparse:     got unsigned long [noderef] *
>> include/linux/mm.h:727:16: sparse: sparse: incorrect type in argument 2 (different modifiers) @@     expected unsigned long const volatile *addr @@     got unsigned long const [noderef] * @@
   include/linux/mm.h:727:16: sparse:     expected unsigned long const volatile *addr
   include/linux/mm.h:727:16: sparse:     got unsigned long const [noderef] *
>> include/linux/mm.h:727:16: sparse: sparse: incorrect type in argument 2 (different modifiers) @@     expected unsigned long const volatile *addr @@     got unsigned long const [noderef] * @@
   include/linux/mm.h:727:16: sparse:     expected unsigned long const volatile *addr
   include/linux/mm.h:727:16: sparse:     got unsigned long const [noderef] *
>> include/linux/mm.h:742:23: sparse: sparse: incorrect type in argument 2 (different modifiers) @@     expected unsigned long volatile *addr @@     got unsigned long [noderef] * @@
   include/linux/mm.h:742:23: sparse:     expected unsigned long volatile *addr
   include/linux/mm.h:742:23: sparse:     got unsigned long [noderef] *
>> include/linux/mm.h:727:16: sparse: sparse: incorrect type in argument 2 (different modifiers) @@     expected unsigned long const volatile *addr @@     got unsigned long const [noderef] * @@
   include/linux/mm.h:727:16: sparse:     expected unsigned long const volatile *addr
   include/linux/mm.h:727:16: sparse:     got unsigned long const [noderef] *
>> include/linux/mm.h:727:16: sparse: sparse: incorrect type in argument 2 (different modifiers) @@     expected unsigned long const volatile *addr @@     got unsigned long const [noderef] * @@
   include/linux/mm.h:727:16: sparse:     expected unsigned long const volatile *addr
   include/linux/mm.h:727:16: sparse:     got unsigned long const [noderef] *
>> include/linux/mm.h:742:23: sparse: sparse: incorrect type in argument 2 (different modifiers) @@     expected unsigned long volatile *addr @@     got unsigned long [noderef] * @@
   include/linux/mm.h:742:23: sparse:     expected unsigned long volatile *addr
   include/linux/mm.h:742:23: sparse:     got unsigned long [noderef] *
>> include/linux/mm.h:727:16: sparse: sparse: incorrect type in argument 2 (different modifiers) @@     expected unsigned long const volatile *addr @@     got unsigned long const [noderef] * @@
   include/linux/mm.h:727:16: sparse:     expected unsigned long const volatile *addr
   include/linux/mm.h:727:16: sparse:     got unsigned long const [noderef] *
>> include/linux/mm.h:727:16: sparse: sparse: incorrect type in argument 2 (different modifiers) @@     expected unsigned long const volatile *addr @@     got unsigned long const [noderef] * @@
   include/linux/mm.h:727:16: sparse:     expected unsigned long const volatile *addr
   include/linux/mm.h:727:16: sparse:     got unsigned long const [noderef] *
>> include/linux/mm.h:742:23: sparse: sparse: incorrect type in argument 2 (different modifiers) @@     expected unsigned long volatile *addr @@     got unsigned long [noderef] * @@
   include/linux/mm.h:742:23: sparse:     expected unsigned long volatile *addr
   include/linux/mm.h:742:23: sparse:     got unsigned long [noderef] *
>> include/linux/mm.h:727:16: sparse: sparse: incorrect type in argument 2 (different modifiers) @@     expected unsigned long const volatile *addr @@     got unsigned long const [noderef] * @@
   include/linux/mm.h:727:16: sparse:     expected unsigned long const volatile *addr
   include/linux/mm.h:727:16: sparse:     got unsigned long const [noderef] *
>> include/linux/mm.h:727:16: sparse: sparse: incorrect type in argument 2 (different modifiers) @@     expected unsigned long const volatile *addr @@     got unsigned long const [noderef] * @@
   include/linux/mm.h:727:16: sparse:     expected unsigned long const volatile *addr
   include/linux/mm.h:727:16: sparse:     got unsigned long const [noderef] *
>> include/linux/mm.h:742:23: sparse: sparse: incorrect type in argument 2 (different modifiers) @@     expected unsigned long volatile *addr @@     got unsigned long [noderef] * @@
   include/linux/mm.h:742:23: sparse:     expected unsigned long volatile *addr
   include/linux/mm.h:742:23: sparse:     got unsigned long [noderef] *
>> include/linux/mm.h:727:16: sparse: sparse: incorrect type in argument 2 (different modifiers) @@     expected unsigned long const volatile *addr @@     got unsigned long const [noderef] * @@
   include/linux/mm.h:727:16: sparse:     expected unsigned long const volatile *addr
   include/linux/mm.h:727:16: sparse:     got unsigned long const [noderef] *
>> include/linux/mm.h:727:16: sparse: sparse: incorrect type in argument 2 (different modifiers) @@     expected unsigned long const volatile *addr @@     got unsigned long const [noderef] * @@
   include/linux/mm.h:727:16: sparse:     expected unsigned long const volatile *addr
   include/linux/mm.h:727:16: sparse:     got unsigned long const [noderef] *
>> include/linux/mm.h:742:23: sparse: sparse: incorrect type in argument 2 (different modifiers) @@     expected unsigned long volatile *addr @@     got unsigned long [noderef] * @@
   include/linux/mm.h:742:23: sparse:     expected unsigned long volatile *addr
   include/linux/mm.h:742:23: sparse:     got unsigned long [noderef] *
>> include/linux/mm.h:727:16: sparse: sparse: incorrect type in argument 2 (different modifiers) @@     expected unsigned long const volatile *addr @@     got unsigned long const [noderef] * @@
   include/linux/mm.h:727:16: sparse:     expected unsigned long const volatile *addr
   include/linux/mm.h:727:16: sparse:     got unsigned long const [noderef] *
>> include/linux/mm.h:727:16: sparse: sparse: incorrect type in argument 2 (different modifiers) @@     expected unsigned long const volatile *addr @@     got unsigned long const [noderef] * @@
   include/linux/mm.h:727:16: sparse:     expected unsigned long const volatile *addr
   include/linux/mm.h:727:16: sparse:     got unsigned long const [noderef] *
>> include/linux/mm.h:742:23: sparse: sparse: incorrect type in argument 2 (different modifiers) @@     expected unsigned long volatile *addr @@     got unsigned long [noderef] * @@
   include/linux/mm.h:742:23: sparse:     expected unsigned long volatile *addr
   include/linux/mm.h:742:23: sparse:     got unsigned long [noderef] *
--
   mm/memory.c: note: in included file (through arch/microblaze/include/asm/io.h, include/linux/io.h, include/linux/irq.h, ...):
>> include/linux/mm.h:727:16: sparse: sparse: incorrect type in argument 2 (different modifiers) @@     expected unsigned long const volatile *addr @@     got unsigned long const [noderef] * @@
   include/linux/mm.h:727:16: sparse:     expected unsigned long const volatile *addr
   include/linux/mm.h:727:16: sparse:     got unsigned long const [noderef] *
>> include/linux/mm.h:727:16: sparse: sparse: incorrect type in argument 2 (different modifiers) @@     expected unsigned long const volatile *addr @@     got unsigned long const [noderef] * @@
   include/linux/mm.h:727:16: sparse:     expected unsigned long const volatile *addr
   include/linux/mm.h:727:16: sparse:     got unsigned long const [noderef] *
>> include/linux/mm.h:727:16: sparse: sparse: incorrect type in argument 2 (different modifiers) @@     expected unsigned long const volatile *addr @@     got unsigned long const [noderef] * @@
   include/linux/mm.h:727:16: sparse:     expected unsigned long const volatile *addr
   include/linux/mm.h:727:16: sparse:     got unsigned long const [noderef] *
>> include/linux/mm.h:727:16: sparse: sparse: incorrect type in argument 2 (different modifiers) @@     expected unsigned long const volatile *addr @@     got unsigned long const [noderef] * @@
   include/linux/mm.h:727:16: sparse:     expected unsigned long const volatile *addr
   include/linux/mm.h:727:16: sparse:     got unsigned long const [noderef] *
>> include/linux/mm.h:727:16: sparse: sparse: incorrect type in argument 2 (different modifiers) @@     expected unsigned long const volatile *addr @@     got unsigned long const [noderef] * @@
   include/linux/mm.h:727:16: sparse:     expected unsigned long const volatile *addr
   include/linux/mm.h:727:16: sparse:     got unsigned long const [noderef] *
>> include/linux/mm.h:727:16: sparse: sparse: incorrect type in argument 2 (different modifiers) @@     expected unsigned long const volatile *addr @@     got unsigned long const [noderef] * @@
   include/linux/mm.h:727:16: sparse:     expected unsigned long const volatile *addr
   include/linux/mm.h:727:16: sparse:     got unsigned long const [noderef] *
   mm/memory.c:1329:9: sparse: sparse: context imbalance in 'copy_pte_range' - unexpected unlock
   mm/memory.c:2224:16: sparse: sparse: context imbalance in '__get_locked_pte' - different lock contexts for basic block
   mm/memory.c:2331:9: sparse: sparse: context imbalance in 'insert_page' - unexpected unlock
   mm/memory.c:2616:9: sparse: sparse: context imbalance in 'insert_pfn' - unexpected unlock
   mm/memory.c:3154:17: sparse: sparse: context imbalance in 'apply_to_pte_range' - unexpected unlock
   mm/memory.c:3787:42: sparse: sparse: context imbalance in 'wp_page_copy' - different lock contexts for basic block
   mm/memory.c:3826:19: sparse: sparse: context imbalance in 'finish_mkwrite_fault' - different lock contexts for basic block
   mm/memory.c:3857:17: sparse: sparse: context imbalance in 'wp_pfn_shared' - unexpected unlock
   mm/memory.c:3883:17: sparse: sparse: context imbalance in 'wp_page_shared' - unexpected unlock
   mm/memory.c:4049:19: sparse: sparse: context imbalance in 'do_wp_page' - different lock contexts for basic block
   mm/memory.c:4311:9: sparse: sparse: context imbalance in 'remove_device_exclusive_entry' - different lock contexts for basic block
   mm/memory.c:4337:19: sparse: sparse: context imbalance in 'pte_marker_clear' - different lock contexts for basic block
   mm/memory.c:4582:12: sparse: sparse: context imbalance in 'do_swap_page' - unexpected unlock
>> include/linux/mm.h:727:16: sparse: sparse: incorrect type in argument 2 (different modifiers) @@     expected unsigned long const volatile *addr @@     got unsigned long const [noderef] * @@
   include/linux/mm.h:727:16: sparse:     expected unsigned long const volatile *addr
   include/linux/mm.h:727:16: sparse:     got unsigned long const [noderef] *
>> include/linux/mm.h:727:16: sparse: sparse: incorrect type in argument 2 (different modifiers) @@     expected unsigned long const volatile *addr @@     got unsigned long const [noderef] * @@
   include/linux/mm.h:727:16: sparse:     expected unsigned long const volatile *addr
   include/linux/mm.h:727:16: sparse:     got unsigned long const [noderef] *
>> include/linux/mm.h:727:16: sparse: sparse: incorrect type in argument 2 (different modifiers) @@     expected unsigned long const volatile *addr @@     got unsigned long const [noderef] * @@
   include/linux/mm.h:727:16: sparse:     expected unsigned long const volatile *addr
   include/linux/mm.h:727:16: sparse:     got unsigned long const [noderef] *
>> include/linux/mm.h:727:16: sparse: sparse: incorrect type in argument 2 (different modifiers) @@     expected unsigned long const volatile *addr @@     got unsigned long const [noderef] * @@
   include/linux/mm.h:727:16: sparse:     expected unsigned long const volatile *addr
   include/linux/mm.h:727:16: sparse:     got unsigned long const [noderef] *
   mm/memory.c:5240:9: sparse: sparse: context imbalance in 'do_anonymous_page' - different lock contexts for basic block
>> include/linux/mm.h:727:16: sparse: sparse: incorrect type in argument 2 (different modifiers) @@     expected unsigned long const volatile *addr @@     got unsigned long const [noderef] * @@
   include/linux/mm.h:727:16: sparse:     expected unsigned long const volatile *addr
   include/linux/mm.h:727:16: sparse:     got unsigned long const [noderef] *
>> include/linux/mm.h:727:16: sparse: sparse: incorrect type in argument 2 (different modifiers) @@     expected unsigned long const volatile *addr @@     got unsigned long const [noderef] * @@
   include/linux/mm.h:727:16: sparse:     expected unsigned long const volatile *addr
   include/linux/mm.h:727:16: sparse:     got unsigned long const [noderef] *
   mm/memory.c:5470:12: sparse: sparse: context imbalance in 'finish_fault' - different lock contexts for basic block
   mm/memory.c:5842:9: sparse: sparse: context imbalance in 'do_fault' - different lock contexts for basic block
   mm/memory.c:5971:17: sparse: sparse: context imbalance in 'do_numa_page' - unexpected unlock
   mm/memory.c:6174:34: sparse: sparse: context imbalance in 'handle_pte_fault' - unexpected unlock
   mm/memory.c:6655:5: sparse: sparse: context imbalance in 'follow_pfnmap_start' - different lock contexts for basic block
   mm/memory.c:6741:28: sparse: sparse: context imbalance in 'follow_pfnmap_end' - unexpected unlock
--
   mm/mmap.c: note: in included file (through arch/microblaze/include/asm/cacheflush.h, include/linux/cacheflush.h, include/linux/highmem.h, ...):
>> include/linux/mm.h:727:16: sparse: sparse: incorrect type in argument 2 (different modifiers) @@     expected unsigned long const volatile *addr @@     got unsigned long const [noderef] * @@
   include/linux/mm.h:727:16: sparse:     expected unsigned long const volatile *addr
   include/linux/mm.h:727:16: sparse:     got unsigned long const [noderef] *
>> include/linux/mm.h:727:16: sparse: sparse: incorrect type in argument 2 (different modifiers) @@     expected unsigned long const volatile *addr @@     got unsigned long const [noderef] * @@
   include/linux/mm.h:727:16: sparse:     expected unsigned long const volatile *addr
   include/linux/mm.h:727:16: sparse:     got unsigned long const [noderef] *
>> include/linux/mm.h:742:23: sparse: sparse: incorrect type in argument 2 (different modifiers) @@     expected unsigned long volatile *addr @@     got unsigned long [noderef] * @@
   include/linux/mm.h:742:23: sparse:     expected unsigned long volatile *addr
   include/linux/mm.h:742:23: sparse:     got unsigned long [noderef] *
>> include/linux/mm.h:742:23: sparse: sparse: incorrect type in argument 2 (different modifiers) @@     expected unsigned long volatile *addr @@     got unsigned long [noderef] * @@
   include/linux/mm.h:742:23: sparse:     expected unsigned long volatile *addr
   include/linux/mm.h:742:23: sparse:     got unsigned long [noderef] *
>> include/linux/mm.h:742:23: sparse: sparse: incorrect type in argument 2 (different modifiers) @@     expected unsigned long volatile *addr @@     got unsigned long [noderef] * @@
   include/linux/mm.h:742:23: sparse:     expected unsigned long volatile *addr
   include/linux/mm.h:742:23: sparse:     got unsigned long [noderef] *
--
   mm/mprotect.c: note: in included file (through include/linux/pagewalk.h):
>> include/linux/mm.h:727:16: sparse: sparse: incorrect type in argument 2 (different modifiers) @@     expected unsigned long const volatile *addr @@     got unsigned long const [noderef] * @@
   include/linux/mm.h:727:16: sparse:     expected unsigned long const volatile *addr
   include/linux/mm.h:727:16: sparse:     got unsigned long const [noderef] *
>> include/linux/mm.h:727:16: sparse: sparse: incorrect type in argument 2 (different modifiers) @@     expected unsigned long const volatile *addr @@     got unsigned long const [noderef] * @@
   include/linux/mm.h:727:16: sparse:     expected unsigned long const volatile *addr
   include/linux/mm.h:727:16: sparse:     got unsigned long const [noderef] *
--
   mm/rmap.c: note: in included file:
>> include/linux/mm.h:727:16: sparse: sparse: incorrect type in argument 2 (different modifiers) @@     expected unsigned long const volatile *addr @@     got unsigned long const [noderef] * @@
   include/linux/mm.h:727:16: sparse:     expected unsigned long const volatile *addr
   include/linux/mm.h:727:16: sparse:     got unsigned long const [noderef] *
>> include/linux/mm.h:727:16: sparse: sparse: incorrect type in argument 2 (different modifiers) @@     expected unsigned long const volatile *addr @@     got unsigned long const [noderef] * @@
   include/linux/mm.h:727:16: sparse:     expected unsigned long const volatile *addr
   include/linux/mm.h:727:16: sparse:     got unsigned long const [noderef] *
   mm/rmap.c: note: in included file (through include/linux/ksm.h):
   include/linux/rmap.h:951:26: sparse: sparse: context imbalance in 'folio_referenced_one' - unexpected unlock
   include/linux/rmap.h:951:26: sparse: sparse: context imbalance in 'try_to_unmap_one' - unexpected unlock
   include/linux/rmap.h:951:26: sparse: sparse: context imbalance in 'try_to_migrate_one' - unexpected unlock
--
   mm/vma.c: note: in included file (through arch/microblaze/include/asm/cacheflush.h, include/linux/cacheflush.h, include/linux/highmem.h, ...):
>> include/linux/mm.h:727:16: sparse: sparse: incorrect type in argument 2 (different modifiers) @@     expected unsigned long const volatile *addr @@     got unsigned long const [noderef] * @@
   include/linux/mm.h:727:16: sparse:     expected unsigned long const volatile *addr
   include/linux/mm.h:727:16: sparse:     got unsigned long const [noderef] *
>> include/linux/mm.h:727:16: sparse: sparse: incorrect type in argument 2 (different modifiers) @@     expected unsigned long const volatile *addr @@     got unsigned long const [noderef] * @@
   include/linux/mm.h:727:16: sparse:     expected unsigned long const volatile *addr
   include/linux/mm.h:727:16: sparse:     got unsigned long const [noderef] *

vim +727 include/linux/mm.h

5e31275cc997f8 Suren Baghdasaryan 2023-02-27  724  
34e1a4ccaed274 Lorenzo Stoakes    2025-08-12  725  static inline bool mm_flags_test(int flag, const struct mm_struct *mm)
34e1a4ccaed274 Lorenzo Stoakes    2025-08-12  726  {
34e1a4ccaed274 Lorenzo Stoakes    2025-08-12 @727  	return test_bit(flag, ACCESS_PRIVATE(&mm->_flags, __mm_flags));
34e1a4ccaed274 Lorenzo Stoakes    2025-08-12  728  }
34e1a4ccaed274 Lorenzo Stoakes    2025-08-12  729  
34e1a4ccaed274 Lorenzo Stoakes    2025-08-12  730  static inline bool mm_flags_test_and_set(int flag, struct mm_struct *mm)
34e1a4ccaed274 Lorenzo Stoakes    2025-08-12  731  {
34e1a4ccaed274 Lorenzo Stoakes    2025-08-12  732  	return test_and_set_bit(flag, ACCESS_PRIVATE(&mm->_flags, __mm_flags));
34e1a4ccaed274 Lorenzo Stoakes    2025-08-12  733  }
34e1a4ccaed274 Lorenzo Stoakes    2025-08-12  734  
34e1a4ccaed274 Lorenzo Stoakes    2025-08-12  735  static inline bool mm_flags_test_and_clear(int flag, struct mm_struct *mm)
34e1a4ccaed274 Lorenzo Stoakes    2025-08-12  736  {
34e1a4ccaed274 Lorenzo Stoakes    2025-08-12  737  	return test_and_clear_bit(flag, ACCESS_PRIVATE(&mm->_flags, __mm_flags));
34e1a4ccaed274 Lorenzo Stoakes    2025-08-12  738  }
34e1a4ccaed274 Lorenzo Stoakes    2025-08-12  739  
34e1a4ccaed274 Lorenzo Stoakes    2025-08-12  740  static inline void mm_flags_set(int flag, struct mm_struct *mm)
34e1a4ccaed274 Lorenzo Stoakes    2025-08-12  741  {
34e1a4ccaed274 Lorenzo Stoakes    2025-08-12 @742  	set_bit(flag, ACCESS_PRIVATE(&mm->_flags, __mm_flags));
34e1a4ccaed274 Lorenzo Stoakes    2025-08-12  743  }
34e1a4ccaed274 Lorenzo Stoakes    2025-08-12  744  

:::::: The code at line 727 was first introduced by commit
:::::: 34e1a4ccaed27416e7c6cd5ec43d9f3f41bf107b mm: add bitmap mm->flags field

:::::: TO: Lorenzo Stoakes <lorenzo.stoakes@oracle.com>
:::::: CC: Andrew Morton <akpm@linux-foundation.org>

-- 
0-DAY CI Kernel Test Service
https://github.com/intel/lkp-tests/wiki


^ permalink raw reply	[flat|nested] only message in thread

only message in thread, other threads:[~2025-08-13 16:46 UTC | newest]

Thread overview: (only message) (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2025-08-13 16:45 [akpm-mm:mm-new 120/137] include/linux/mm.h:727:16: sparse: sparse: incorrect type in argument 2 (different modifiers) kernel test robot

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).