mirror of https://lore.kernel.org/lkml/
 help / color / mirror / Atom feed
From: kernel test robot <lkp@intel.com>
To: David Hildenbrand <david@redhat.com>
Cc: kbuild-all@lists.01.org, linux-kernel@vger.kernel.org
Subject: [davidhildenbrand:cow_fixes_part_2_v1 14/29] mm/rmap.c:1193:39: sparse: sparse: incorrect type in argument 4 (different base types)
Date: Fri, 25 Feb 2022 20:58:06 +0800	[thread overview]
Message-ID: <202202252038.ij1YGn0d-lkp@intel.com> (raw)

tree:   git://github.com/davidhildenbrand/linux cow_fixes_part_2_v1
head:   92edd2765af5ab60b1b596939ebbcb705f911a34
commit: 1429b19ab48e137cbae1bc629e2afe47aab932c4 [14/29] mm/rmap: convert RMAP flags to proper a distinct rmap_t type
config: sparc-randconfig-s031-20220225 (https://download.01.org/0day-ci/archive/20220225/202202252038.ij1YGn0d-lkp@intel.com/config)
compiler: sparc64-linux-gcc (GCC) 11.2.0
reproduce:
        wget https://raw.githubusercontent.com/intel/lkp-tests/master/sbin/make.cross -O ~/bin/make.cross
        chmod +x ~/bin/make.cross
        # apt-get install sparse
        # sparse version: v0.6.4-dirty
        # https://github.com/davidhildenbrand/linux/commit/1429b19ab48e137cbae1bc629e2afe47aab932c4
        git remote add davidhildenbrand git://github.com/davidhildenbrand/linux
        git fetch --no-tags davidhildenbrand cow_fixes_part_2_v1
        git checkout 1429b19ab48e137cbae1bc629e2afe47aab932c4
        # save the config file to linux build tree
        mkdir build_dir
        COMPILER_INSTALL_PATH=$HOME/0day COMPILER=gcc-11.2.0 make.cross C=1 CF='-fdiagnostic-prefix -D__CHECK_ENDIAN__' O=build_dir ARCH=sparc SHELL=/bin/bash

If you fix the issue, kindly add following tag as appropriate
Reported-by: kernel test robot <lkp@intel.com>


sparse warnings: (new ones prefixed by >>)
>> mm/rmap.c:1193:39: sparse: sparse: incorrect type in argument 4 (different base types) @@     expected int exclusive @@     got restricted rmap_t @@
   mm/rmap.c:1193:39: sparse:     expected int exclusive
   mm/rmap.c:1193:39: sparse:     got restricted rmap_t
   mm/rmap.c: note: in included file (through include/linux/ksm.h):
   include/linux/rmap.h:282:28: sparse: sparse: context imbalance in 'page_referenced_one' - unexpected unlock
   include/linux/rmap.h:282:28: sparse: sparse: context imbalance in 'try_to_unmap_one' - unexpected unlock
   include/linux/rmap.h:282:28: sparse: sparse: context imbalance in 'try_to_migrate_one' - unexpected unlock
   include/linux/rmap.h:282:28: sparse: sparse: context imbalance in 'page_mlock_one' - unexpected unlock

vim +1193 mm/rmap.c

ad8c2ee801ad7a Rik van Riel            2010-08-09  1145  
ad8c2ee801ad7a Rik van Riel            2010-08-09  1146  /*
ad8c2ee801ad7a Rik van Riel            2010-08-09  1147   * Special version of the above for do_swap_page, which often runs
ad8c2ee801ad7a Rik van Riel            2010-08-09  1148   * into pages that are exclusively owned by the current process.
ad8c2ee801ad7a Rik van Riel            2010-08-09  1149   * Everybody else should continue to use page_add_anon_rmap above.
ad8c2ee801ad7a Rik van Riel            2010-08-09  1150   */
ad8c2ee801ad7a Rik van Riel            2010-08-09  1151  void do_page_add_anon_rmap(struct page *page,
1429b19ab48e13 David Hildenbrand       2022-02-25  1152  	struct vm_area_struct *vma, unsigned long address, rmap_t flags)
9617d95e6e9ffd Nicholas Piggin         2006-01-06  1153  {
d281ee61451835 Kirill A. Shutemov      2016-01-15  1154  	bool compound = flags & RMAP_COMPOUND;
53f9263baba69f Kirill A. Shutemov      2016-01-15  1155  	bool first;
53f9263baba69f Kirill A. Shutemov      2016-01-15  1156  
be5d0a74c62d8d Johannes Weiner         2020-06-03  1157  	if (unlikely(PageKsm(page)))
be5d0a74c62d8d Johannes Weiner         2020-06-03  1158  		lock_page_memcg(page);
be5d0a74c62d8d Johannes Weiner         2020-06-03  1159  	else
be5d0a74c62d8d Johannes Weiner         2020-06-03  1160  		VM_BUG_ON_PAGE(!PageLocked(page), page);
be5d0a74c62d8d Johannes Weiner         2020-06-03  1161  
53f9263baba69f Kirill A. Shutemov      2016-01-15  1162  	if (compound) {
53f9263baba69f Kirill A. Shutemov      2016-01-15  1163  		atomic_t *mapcount;
e9b61f19858a5d Kirill A. Shutemov      2016-01-15  1164  		VM_BUG_ON_PAGE(!PageLocked(page), page);
53f9263baba69f Kirill A. Shutemov      2016-01-15  1165  		VM_BUG_ON_PAGE(!PageTransHuge(page), page);
53f9263baba69f Kirill A. Shutemov      2016-01-15  1166  		mapcount = compound_mapcount_ptr(page);
53f9263baba69f Kirill A. Shutemov      2016-01-15  1167  		first = atomic_inc_and_test(mapcount);
53f9263baba69f Kirill A. Shutemov      2016-01-15  1168  	} else {
53f9263baba69f Kirill A. Shutemov      2016-01-15  1169  		first = atomic_inc_and_test(&page->_mapcount);
53f9263baba69f Kirill A. Shutemov      2016-01-15  1170  	}
53f9263baba69f Kirill A. Shutemov      2016-01-15  1171  
53f9263baba69f Kirill A. Shutemov      2016-01-15  1172  	if (first) {
6c357848b44b40 Matthew Wilcox (Oracle  2020-08-14  1173) 		int nr = compound ? thp_nr_pages(page) : 1;
bea04b073292b2 Jianyu Zhan             2014-06-04  1174  		/*
bea04b073292b2 Jianyu Zhan             2014-06-04  1175  		 * We use the irq-unsafe __{inc|mod}_zone_page_stat because
bea04b073292b2 Jianyu Zhan             2014-06-04  1176  		 * these counters are not modified in interrupt context, and
bea04b073292b2 Jianyu Zhan             2014-06-04  1177  		 * pte lock(a spinlock) is held, which implies preemption
bea04b073292b2 Jianyu Zhan             2014-06-04  1178  		 * disabled.
bea04b073292b2 Jianyu Zhan             2014-06-04  1179  		 */
65c453778aea37 Kirill A. Shutemov      2016-07-26  1180  		if (compound)
69473e5de87389 Muchun Song             2021-02-24  1181  			__mod_lruvec_page_state(page, NR_ANON_THPS, nr);
be5d0a74c62d8d Johannes Weiner         2020-06-03  1182  		__mod_lruvec_page_state(page, NR_ANON_MAPPED, nr);
79134171df2381 Andrea Arcangeli        2011-01-13  1183  	}
5ad6468801d28c Hugh Dickins            2009-12-14  1184  
be5d0a74c62d8d Johannes Weiner         2020-06-03  1185  	if (unlikely(PageKsm(page))) {
be5d0a74c62d8d Johannes Weiner         2020-06-03  1186  		unlock_page_memcg(page);
be5d0a74c62d8d Johannes Weiner         2020-06-03  1187  		return;
be5d0a74c62d8d Johannes Weiner         2020-06-03  1188  	}
53f9263baba69f Kirill A. Shutemov      2016-01-15  1189  
5dbe0af47f8a8f Hugh Dickins            2011-05-28  1190  	/* address might be in next vma when migration races vma_adjust */
5ad6468801d28c Hugh Dickins            2009-12-14  1191  	if (first)
d281ee61451835 Kirill A. Shutemov      2016-01-15  1192  		__page_set_anon_rmap(page, vma, address,
d281ee61451835 Kirill A. Shutemov      2016-01-15 @1193  				flags & RMAP_EXCLUSIVE);
69029cd550284e KAMEZAWA Hiroyuki       2008-07-25  1194  	else
c97a9e10eaee32 Nicholas Piggin         2007-05-16  1195  		__page_check_anon_rmap(page, vma, address);
^1da177e4c3f41 Linus Torvalds          2005-04-16  1196  }
^1da177e4c3f41 Linus Torvalds          2005-04-16  1197  

:::::: The code at line 1193 was first introduced by commit
:::::: d281ee6145183594788ab6d5b55f8d144e69eace rmap: add argument to charge compound page

:::::: TO: Kirill A. Shutemov <kirill.shutemov@linux.intel.com>
:::::: CC: Linus Torvalds <torvalds@linux-foundation.org>

---
0-DAY CI Kernel Test Service, Intel Corporation
https://lists.01.org/hyperkitty/list/kbuild-all@lists.01.org

                 reply	other threads:[~2022-02-25 12:59 UTC|newest]

Thread overview: [no followups] expand[flat|nested]  mbox.gz  Atom feed

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=202202252038.ij1YGn0d-lkp@intel.com \
    --to=lkp@intel.com \
    --cc=david@redhat.com \
    --cc=kbuild-all@lists.01.org \
    --cc=linux-kernel@vger.kernel.org \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox

all inboxes | Powered by JetHome®