All of lore.kernel.org
 help / color / mirror / Atom feed
* arch/arm64/include/asm/irqflags.h:37:9: sparse: sparse: context imbalance in '__split_huge_page' - different lock contexts for basic block
@ 2021-07-02 20:17 kernel test robot
  0 siblings, 0 replies; 2+ messages in thread
From: kernel test robot @ 2021-07-02 20:17 UTC (permalink / raw)
  To: kbuild

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

CC: kbuild-all(a)lists.01.org
CC: linux-kernel(a)vger.kernel.org
TO: Alex Shi <alex.shi@linux.alibaba.com>
CC: "Kirill A. Shutemov" <kirill.shutemov@linux.intel.com>
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:   3dbdb38e286903ec220aaf1fb29a8d94297da246
commit: b6769834aac1d467fa1c71277d15688efcbb4d76 mm/thp: narrow lru locking
date:   7 months ago
:::::: branch date: 20 hours ago
:::::: commit date: 7 months ago
config: arm64-randconfig-s032-20210702 (attached as .config)
compiler: aarch64-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=b6769834aac1d467fa1c71277d15688efcbb4d76
        git remote add linus https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git
        git fetch --no-tags linus master
        git checkout b6769834aac1d467fa1c71277d15688efcbb4d76
        # 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__' O=build_dir ARCH=arm64 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/huge_memory.c:1640:20: sparse: sparse: context imbalance in 'madvise_free_huge_pmd' - unexpected unlock
   mm/huge_memory.c:1677:28: sparse: sparse: context imbalance in 'zap_huge_pmd' - unexpected unlock
   mm/huge_memory.c:1787:28: sparse: sparse: context imbalance in 'move_huge_pmd' - unexpected unlock
   mm/huge_memory.c:1891:20: sparse: sparse: context imbalance in 'change_huge_pmd' - unexpected unlock
   mm/huge_memory.c:1901:12: sparse: sparse: context imbalance in '__pmd_trans_huge_lock' - wrong count at exit
   mm/huge_memory.c: note: in included file (through include/linux/irqflags.h, include/linux/spinlock.h, include/linux/mmzone.h, ...):
>> arch/arm64/include/asm/irqflags.h:37:9: sparse: sparse: context imbalance in '__split_huge_page' - different lock contexts for basic block
   arch/arm64/include/asm/irqflags.h:37:9: sparse: sparse: context imbalance in 'split_huge_page_to_list' - different lock contexts for basic block

vim +/__split_huge_page +37 arch/arm64/include/asm/irqflags.h

fb9bd7d6df81dd Marc Zyngier   2012-03-05  12  
65be7a1b799f11 James Morse    2017-11-02  13  /*
65be7a1b799f11 James Morse    2017-11-02  14   * Aarch64 has flags for masking: Debug, Asynchronous (serror), Interrupts and
65be7a1b799f11 James Morse    2017-11-02  15   * FIQ exceptions, in the 'daif' register. We mask and unmask them in 'dai'
65be7a1b799f11 James Morse    2017-11-02  16   * order:
65be7a1b799f11 James Morse    2017-11-02  17   * Masking debug exceptions causes all other exceptions to be masked too/
65be7a1b799f11 James Morse    2017-11-02  18   * Masking SError masks irq, but not debug exceptions. Masking irqs has no
65be7a1b799f11 James Morse    2017-11-02  19   * side effects for other flags. Keeping to this order makes it easier for
65be7a1b799f11 James Morse    2017-11-02  20   * entry.S to know which exceptions should be unmasked.
65be7a1b799f11 James Morse    2017-11-02  21   *
65be7a1b799f11 James Morse    2017-11-02  22   * FIQ is never expected, but we mask it when we disable debug exceptions, and
65be7a1b799f11 James Morse    2017-11-02  23   * unmask it at all other times.
65be7a1b799f11 James Morse    2017-11-02  24   */
65be7a1b799f11 James Morse    2017-11-02  25  
fb9bd7d6df81dd Marc Zyngier   2012-03-05  26  /*
fb9bd7d6df81dd Marc Zyngier   2012-03-05  27   * CPU interrupt mask handling.
fb9bd7d6df81dd Marc Zyngier   2012-03-05  28   */
fb9bd7d6df81dd Marc Zyngier   2012-03-05  29  static inline void arch_local_irq_enable(void)
fb9bd7d6df81dd Marc Zyngier   2012-03-05  30  {
48ce8f80f5901f Julien Thierry 2019-06-11  31  	if (system_has_prio_mask_debugging()) {
48ce8f80f5901f Julien Thierry 2019-06-11  32  		u32 pmr = read_sysreg_s(SYS_ICC_PMR_EL1);
48ce8f80f5901f Julien Thierry 2019-06-11  33  
48ce8f80f5901f Julien Thierry 2019-06-11  34  		WARN_ON_ONCE(pmr != GIC_PRIO_IRQON && pmr != GIC_PRIO_IRQOFF);
48ce8f80f5901f Julien Thierry 2019-06-11  35  	}
48ce8f80f5901f Julien Thierry 2019-06-11  36  
4a503217ce37e1 Julien Thierry 2019-01-31 @37  	asm volatile(ALTERNATIVE(
f226650494c6aa Marc Zyngier   2019-10-02  38  		"msr	daifclr, #2		// arch_local_irq_enable",
f226650494c6aa Marc Zyngier   2019-10-02  39  		__msr_s(SYS_ICC_PMR_EL1, "%0"),
4a503217ce37e1 Julien Thierry 2019-01-31  40  		ARM64_HAS_IRQ_PRIO_MASKING)
fb9bd7d6df81dd Marc Zyngier   2012-03-05  41  		:
a80554fc36ba41 Julien Thierry 2019-02-08  42  		: "r" ((unsigned long) GIC_PRIO_IRQON)
fb9bd7d6df81dd Marc Zyngier   2012-03-05  43  		: "memory");
f226650494c6aa Marc Zyngier   2019-10-02  44  
f226650494c6aa Marc Zyngier   2019-10-02  45  	pmr_sync();
fb9bd7d6df81dd Marc Zyngier   2012-03-05  46  }
fb9bd7d6df81dd Marc Zyngier   2012-03-05  47  

:::::: The code at line 37 was first introduced by commit
:::::: 4a503217ce37e1f4f3d9b681bbcbbac103776bf1 arm64: irqflags: Use ICC_PMR_EL1 for interrupt masking

:::::: TO: Julien Thierry <julien.thierry@arm.com>
:::::: CC: Catalin Marinas <catalin.marinas@arm.com>

---
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: 37557 bytes --]

^ permalink raw reply	[flat|nested] 2+ messages in thread

* arch/arm64/include/asm/irqflags.h:37:9: sparse: sparse: context imbalance in '__split_huge_page' - different lock contexts for basic block
@ 2021-02-05 18:00 kernel test robot
  0 siblings, 0 replies; 2+ messages in thread
From: kernel test robot @ 2021-02-05 18:00 UTC (permalink / raw)
  To: kbuild

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

CC: kbuild-all(a)lists.01.org
CC: linux-kernel(a)vger.kernel.org
TO: Alex Shi <alex.shi@linux.alibaba.com>
CC: "Kirill A. Shutemov" <kirill.shutemov@linux.intel.com>
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:   61556703b610a104de324e4f061dc6cf7b218b46
commit: b6769834aac1d467fa1c71277d15688efcbb4d76 mm/thp: narrow lru locking
date:   7 weeks ago
:::::: branch date: 2 days ago
:::::: commit date: 7 weeks ago
config: arm64-randconfig-s032-20210205 (attached as .config)
compiler: aarch64-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-215-g0fb77bb6-dirty
        # https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git/commit/?id=b6769834aac1d467fa1c71277d15688efcbb4d76
        git remote add linus https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git
        git fetch --no-tags linus master
        git checkout b6769834aac1d467fa1c71277d15688efcbb4d76
        # 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__' ARCH=arm64 

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/huge_memory.c:1640:20: sparse: sparse: context imbalance in 'madvise_free_huge_pmd' - unexpected unlock
   mm/huge_memory.c:1677:28: sparse: sparse: context imbalance in 'zap_huge_pmd' - unexpected unlock
   mm/huge_memory.c:1787:28: sparse: sparse: context imbalance in 'move_huge_pmd' - unexpected unlock
   mm/huge_memory.c:1891:20: sparse: sparse: context imbalance in 'change_huge_pmd' - unexpected unlock
   mm/huge_memory.c:1901:12: sparse: sparse: context imbalance in '__pmd_trans_huge_lock' - wrong count at exit
   mm/huge_memory.c: note: in included file (through include/linux/irqflags.h, include/linux/spinlock.h, include/linux/mmzone.h, ...):
>> arch/arm64/include/asm/irqflags.h:37:9: sparse: sparse: context imbalance in '__split_huge_page' - different lock contexts for basic block
>> arch/arm64/include/asm/irqflags.h:37:9: sparse: sparse: context imbalance in 'split_huge_page_to_list' - different lock contexts for basic block

vim +/__split_huge_page +37 arch/arm64/include/asm/irqflags.h

fb9bd7d6df81dd Marc Zyngier   2012-03-05  12  
65be7a1b799f11 James Morse    2017-11-02  13  /*
65be7a1b799f11 James Morse    2017-11-02  14   * Aarch64 has flags for masking: Debug, Asynchronous (serror), Interrupts and
65be7a1b799f11 James Morse    2017-11-02  15   * FIQ exceptions, in the 'daif' register. We mask and unmask them in 'dai'
65be7a1b799f11 James Morse    2017-11-02  16   * order:
65be7a1b799f11 James Morse    2017-11-02  17   * Masking debug exceptions causes all other exceptions to be masked too/
65be7a1b799f11 James Morse    2017-11-02  18   * Masking SError masks irq, but not debug exceptions. Masking irqs has no
65be7a1b799f11 James Morse    2017-11-02  19   * side effects for other flags. Keeping to this order makes it easier for
65be7a1b799f11 James Morse    2017-11-02  20   * entry.S to know which exceptions should be unmasked.
65be7a1b799f11 James Morse    2017-11-02  21   *
65be7a1b799f11 James Morse    2017-11-02  22   * FIQ is never expected, but we mask it when we disable debug exceptions, and
65be7a1b799f11 James Morse    2017-11-02  23   * unmask it at all other times.
65be7a1b799f11 James Morse    2017-11-02  24   */
65be7a1b799f11 James Morse    2017-11-02  25  
fb9bd7d6df81dd Marc Zyngier   2012-03-05  26  /*
fb9bd7d6df81dd Marc Zyngier   2012-03-05  27   * CPU interrupt mask handling.
fb9bd7d6df81dd Marc Zyngier   2012-03-05  28   */
fb9bd7d6df81dd Marc Zyngier   2012-03-05  29  static inline void arch_local_irq_enable(void)
fb9bd7d6df81dd Marc Zyngier   2012-03-05  30  {
48ce8f80f5901f Julien Thierry 2019-06-11  31  	if (system_has_prio_mask_debugging()) {
48ce8f80f5901f Julien Thierry 2019-06-11  32  		u32 pmr = read_sysreg_s(SYS_ICC_PMR_EL1);
48ce8f80f5901f Julien Thierry 2019-06-11  33  
48ce8f80f5901f Julien Thierry 2019-06-11  34  		WARN_ON_ONCE(pmr != GIC_PRIO_IRQON && pmr != GIC_PRIO_IRQOFF);
48ce8f80f5901f Julien Thierry 2019-06-11  35  	}
48ce8f80f5901f Julien Thierry 2019-06-11  36  
4a503217ce37e1 Julien Thierry 2019-01-31 @37  	asm volatile(ALTERNATIVE(
f226650494c6aa Marc Zyngier   2019-10-02  38  		"msr	daifclr, #2		// arch_local_irq_enable",
f226650494c6aa Marc Zyngier   2019-10-02  39  		__msr_s(SYS_ICC_PMR_EL1, "%0"),
4a503217ce37e1 Julien Thierry 2019-01-31  40  		ARM64_HAS_IRQ_PRIO_MASKING)
fb9bd7d6df81dd Marc Zyngier   2012-03-05  41  		:
a80554fc36ba41 Julien Thierry 2019-02-08  42  		: "r" ((unsigned long) GIC_PRIO_IRQON)
fb9bd7d6df81dd Marc Zyngier   2012-03-05  43  		: "memory");
f226650494c6aa Marc Zyngier   2019-10-02  44  
f226650494c6aa Marc Zyngier   2019-10-02  45  	pmr_sync();
fb9bd7d6df81dd Marc Zyngier   2012-03-05  46  }
fb9bd7d6df81dd Marc Zyngier   2012-03-05  47  

:::::: The code at line 37 was first introduced by commit
:::::: 4a503217ce37e1f4f3d9b681bbcbbac103776bf1 arm64: irqflags: Use ICC_PMR_EL1 for interrupt masking

:::::: TO: Julien Thierry <julien.thierry@arm.com>
:::::: CC: Catalin Marinas <catalin.marinas@arm.com>

---
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: 39687 bytes --]

^ permalink raw reply	[flat|nested] 2+ messages in thread

end of thread, other threads:[~2021-07-02 20:17 UTC | newest]

Thread overview: 2+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2021-07-02 20:17 arch/arm64/include/asm/irqflags.h:37:9: sparse: sparse: context imbalance in '__split_huge_page' - different lock contexts for basic block kernel test robot
  -- strict thread matches above, loose matches on Subject: below --
2021-02-05 18:00 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.