tree:
https://git.kernel.org/pub/scm/linux/kernel/git/josef/btrfs-next.git zygo-submit
head: ae98f2775f4bf9178e8121e3e58fd433db00b6d7
commit: ae98f2775f4bf9178e8121e3e58fd433db00b6d7 [66/66] btrfs: throttle snapshot delete
on delayed refs
reproduce:
# apt-get install sparse
# sparse version:
git checkout ae98f2775f4bf9178e8121e3e58fd433db00b6d7
make ARCH=x86_64 allmodconfig
make C=1 CF='-fdiagnostic-prefix -D__CHECK_ENDIAN__'
If you fix the issue, kindly add following tag
Reported-by: kbuild test robot <lkp(a)intel.com>
All warnings (new ones prefixed by >>):
> include/linux/kasan-checks.h:38:20: sparse: warning: context
imbalance in 'btrfs_set_lock_blocking_read' - unexpected unlock
fs/btrfs/locking.c:232:41: sparse: warning: context imbalance in
'btrfs_set_lock_blocking_write' - unexpected unlock
fs/btrfs/locking.c:247:6: sparse: warning: context imbalance in
'btrfs_tree_read_lock' - different lock contexts for basic block
fs/btrfs/locking.c:288:5: sparse: warning: context imbalance in
'btrfs_tree_read_lock_atomic' - different lock contexts for basic block
fs/btrfs/locking.c:310:5: sparse: warning: context imbalance in
'btrfs_try_tree_read_lock' - different lock contexts for basic block
fs/btrfs/locking.c:335:5: sparse: warning: context imbalance in
'btrfs_try_tree_write_lock' - different lock contexts for basic block
> include/linux/kasan-checks.h:38:20: sparse: warning: context
imbalance in 'btrfs_tree_read_unlock' - unexpected unlock
fs/btrfs/locking.c:412:6: sparse: warning: context imbalance in 'btrfs_tree_lock'
- wrong count at exit
fs/btrfs/locking.c:129:9: sparse: warning: context imbalance in
'btrfs_tree_unlock' - unexpected unlock
--
fs/btrfs/extent_io.c:2315:9: sparse: error: incompatible types in comparison expression
(different address spaces):
fs/btrfs/extent_io.c:2315:9: sparse: struct rcu_string [noderef] <asn:4> *
fs/btrfs/extent_io.c:2315:9: sparse: struct rcu_string *
include/linux/page-flags.h:174:30: sparse: warning: context imbalance in
'btrfs_release_extent_buffer_pages' - different lock contexts for basic block
> arch/x86/include/asm/atomic.h:125:16: sparse: warning: context
imbalance in 'release_extent_buffer' - unexpected unlock
> fs/btrfs/extent_io.c:5313:6: sparse: warning: context imbalance in
'free_extent_buffer' - wrong count at exit
> fs/btrfs/extent_io.c:5345:6: sparse: warning: context imbalance in
'free_extent_buffer_stale' - wrong count at exit
arch/x86/include/asm/bitops.h:77:37: sparse: warning: cast truncates bits from constant
value (ffffff7f becomes 7f)
vim +/btrfs_set_lock_blocking_read +38 include/linux/kasan-checks.h
7d8ad890dad00f Marco Elver 2019-07-11 25
7d8ad890dad00f Marco Elver 2019-07-11 26 /*
7d8ad890dad00f Marco Elver 2019-07-11 27 * kasan_check_*: Only available when the
particular compilation unit has KASAN
7d8ad890dad00f Marco Elver 2019-07-11 28 * instrumentation enabled. May be used in
header files.
7d8ad890dad00f Marco Elver 2019-07-11 29 */
7d8ad890dad00f Marco Elver 2019-07-11 30 #ifdef __SANITIZE_ADDRESS__
7d8ad890dad00f Marco Elver 2019-07-11 31 #define kasan_check_read
__kasan_check_read
7d8ad890dad00f Marco Elver 2019-07-11 32 #define kasan_check_write
__kasan_check_write
64f8ebaf115bcd Andrey Ryabinin 2016-05-20 33 #else
b5f6e0fc7d60e0 Marco Elver 2019-07-11 34 static inline bool kasan_check_read(const
volatile void *p, unsigned int size)
b5f6e0fc7d60e0 Marco Elver 2019-07-11 35 {
b5f6e0fc7d60e0 Marco Elver 2019-07-11 36 return true;
b5f6e0fc7d60e0 Marco Elver 2019-07-11 37 }
b5f6e0fc7d60e0 Marco Elver 2019-07-11 @38 static inline bool kasan_check_write(const
volatile void *p, unsigned int size)
b5f6e0fc7d60e0 Marco Elver 2019-07-11 39 {
b5f6e0fc7d60e0 Marco Elver 2019-07-11 40 return true;
b5f6e0fc7d60e0 Marco Elver 2019-07-11 41 }
64f8ebaf115bcd Andrey Ryabinin 2016-05-20 42 #endif
64f8ebaf115bcd Andrey Ryabinin 2016-05-20 43
:::::: The code at line 38 was first introduced by commit
:::::: b5f6e0fc7d60e0234dac82498e90dfe9027bad1f mm/kasan: change kasan_check_{read,write}
to return boolean
:::::: TO: Marco Elver <elver(a)google.com>
:::::: CC: Linus Torvalds <torvalds(a)linux-foundation.org>
---
0-DAY CI Kernel Test Service, Intel Corporation
https://lists.01.org/hyperkitty/list/kbuild-all@lists.01.org