All of lore.kernel.org
 help / color / mirror / Atom feed
* mm/vmalloc.c:214:17: sparse: sparse: context imbalance in 'vmap_pages_pte_range' - different lock contexts for basic block
@ 2021-06-09 11:47 kernel test robot
  0 siblings, 0 replies; only message in thread
From: kernel test robot @ 2021-06-09 11:47 UTC (permalink / raw)
  To: kbuild

[-- Attachment #1: Type: text/plain, Size: 4685 bytes --]

CC: kbuild-all(a)lists.01.org
CC: linux-kernel(a)vger.kernel.org
TO: Nicholas Piggin <npiggin@gmail.com>
CC: Miaohe Lin <linmiaohe@huawei.com>
CC: Christoph Hellwig <hch@lst.de>
CC: Andrew Morton <akpm@linux-foundation.org>
CC: Linux Memory Management List <linux-mm@kvack.org>

tree:   https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git master
head:   368094df48e680fa51cedb68537408cfa64b788e
commit: 0a264884046f1ab0c906a61fd838002ecf9ef408 mm/vmalloc: rename vmap_*_range vmap_pages_*_range
date:   6 weeks ago
:::::: branch date: 18 hours ago
:::::: commit date: 6 weeks ago
config: parisc-randconfig-s032-20210607 (attached as .config)
compiler: hppa64-linux-gcc (GCC) 9.3.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.3-341-g8af24329-dirty
        # https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git/commit/?id=0a264884046f1ab0c906a61fd838002ecf9ef408
        git remote add linus https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git
        git fetch --no-tags linus master
        git checkout 0a264884046f1ab0c906a61fd838002ecf9ef408
        # save the attached .config to linux build tree
        COMPILER_INSTALL_PATH=$HOME/0day COMPILER=gcc-9.3.0 make.cross C=1 CF='-fdiagnostic-prefix -D__CHECK_ENDIAN__' W=1 ARCH=parisc 

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/vmalloc.c: note: in included file (through include/linux/pgtable.h, include/linux/mm.h):
   arch/parisc/include/asm/pgtable.h:451:9: sparse: sparse: context imbalance in 'vunmap_pte_range' - different lock contexts for basic block
>> mm/vmalloc.c:214:17: sparse: sparse: context imbalance in 'vmap_pages_pte_range' - different lock contexts for basic block
   mm/vmalloc.c:3482:13: sparse: sparse: context imbalance in 's_start' - wrong count at exit
   mm/vmalloc.c:3497:13: sparse: sparse: context imbalance in 's_stop' - wrong count at exit

vim +/vmap_pages_pte_range +214 mm/vmalloc.c

^1da177e4c3f41 Linus Torvalds  2005-04-16  191  
0a264884046f1a Nicholas Piggin 2021-04-29  192  static int vmap_pages_pte_range(pmd_t *pmd, unsigned long addr,
2ba3e6947aed9b Joerg Roedel    2020-06-01  193  		unsigned long end, pgprot_t prot, struct page **pages, int *nr,
2ba3e6947aed9b Joerg Roedel    2020-06-01  194  		pgtbl_mod_mask *mask)
^1da177e4c3f41 Linus Torvalds  2005-04-16  195  {
^1da177e4c3f41 Linus Torvalds  2005-04-16  196  	pte_t *pte;
^1da177e4c3f41 Linus Torvalds  2005-04-16  197  
db64fe02258f15 Nicholas Piggin 2008-10-18  198  	/*
db64fe02258f15 Nicholas Piggin 2008-10-18  199  	 * nr is a running index into the array which helps higher level
db64fe02258f15 Nicholas Piggin 2008-10-18  200  	 * callers keep track of where we're up to.
db64fe02258f15 Nicholas Piggin 2008-10-18  201  	 */
db64fe02258f15 Nicholas Piggin 2008-10-18  202  
2ba3e6947aed9b Joerg Roedel    2020-06-01  203  	pte = pte_alloc_kernel_track(pmd, addr, mask);
^1da177e4c3f41 Linus Torvalds  2005-04-16  204  	if (!pte)
^1da177e4c3f41 Linus Torvalds  2005-04-16  205  		return -ENOMEM;
^1da177e4c3f41 Linus Torvalds  2005-04-16  206  	do {
db64fe02258f15 Nicholas Piggin 2008-10-18  207  		struct page *page = pages[*nr];
db64fe02258f15 Nicholas Piggin 2008-10-18  208  
db64fe02258f15 Nicholas Piggin 2008-10-18  209  		if (WARN_ON(!pte_none(*pte)))
db64fe02258f15 Nicholas Piggin 2008-10-18  210  			return -EBUSY;
db64fe02258f15 Nicholas Piggin 2008-10-18  211  		if (WARN_ON(!page))
^1da177e4c3f41 Linus Torvalds  2005-04-16  212  			return -ENOMEM;
^1da177e4c3f41 Linus Torvalds  2005-04-16  213  		set_pte_at(&init_mm, addr, pte, mk_pte(page, prot));
db64fe02258f15 Nicholas Piggin 2008-10-18 @214  		(*nr)++;
^1da177e4c3f41 Linus Torvalds  2005-04-16  215  	} while (pte++, addr += PAGE_SIZE, addr != end);
2ba3e6947aed9b Joerg Roedel    2020-06-01  216  	*mask |= PGTBL_PTE_MODIFIED;
^1da177e4c3f41 Linus Torvalds  2005-04-16  217  	return 0;
^1da177e4c3f41 Linus Torvalds  2005-04-16  218  }
^1da177e4c3f41 Linus Torvalds  2005-04-16  219  

:::::: The code at line 214 was first introduced by commit
:::::: db64fe02258f1507e13fe5212a989922323685ce mm: rewrite vmap layer

:::::: TO: Nick Piggin <npiggin@suse.de>
:::::: CC: Linus Torvalds <torvalds@linux-foundation.org>

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

[-- Attachment #2: config.gz --]
[-- Type: application/gzip, Size: 37382 bytes --]

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

only message in thread, other threads:[~2021-06-09 11:47 UTC | newest]

Thread overview: (only message) (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2021-06-09 11:47 mm/vmalloc.c:214:17: sparse: sparse: context imbalance in 'vmap_pages_pte_range' - different lock contexts for basic block kernel test robot

This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.