CC: kbuild-...@lists.01.org
TO: "David, Howells," <dhowe...@redhat.com>

tree:   https://git.kernel.org/pub/scm/linux/kernel/git/dhowells/linux-fs.git 
afs-operation
head:   0295d9a491871fb70f3e5792955d8ae0801a7ae5
commit: 44f32d4b0c05e78ca628dc52f04d86ec98da1e95 [22/27] afs: Reorganise volume 
and server trees to be rooted on the cell
:::::: branch date: 30 hours ago
:::::: commit date: 30 hours ago
config: parisc-randconfig-s031-20200531 (attached as .config)
compiler: hppa-linux-gcc (GCC) 9.3.0
reproduce:
        # apt-get install sparse
        # sparse version: v0.6.1-243-gc100a7ab-dirty
        git checkout 44f32d4b0c05e78ca628dc52f04d86ec98da1e95
        # save the attached .config to linux build tree
        make W=1 C=1 ARCH=parisc CF='-fdiagnostic-prefix -D__CHECK_ENDIAN__'

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


sparse warnings: (new ones prefixed by >>)

>> fs/afs/callback.c:74:38: sparse: sparse: context imbalance in 
>> 'afs_lookup_volume_rcu' - different lock contexts for basic block

# 
https://git.kernel.org/pub/scm/linux/kernel/git/dhowells/linux-fs.git/commit/?id=44f32d4b0c05e78ca628dc52f04d86ec98da1e95
git remote add dhowells-fs 
https://git.kernel.org/pub/scm/linux/kernel/git/dhowells/linux-fs.git
git remote update dhowells-fs
git checkout 44f32d4b0c05e78ca628dc52f04d86ec98da1e95
vim +/afs_lookup_volume_rcu +74 fs/afs/callback.c

^1da177e4c3f41 Linus Torvalds 2005-04-16  58  
fc7e32d8695359 David Howells  2020-03-27  59  /*
44f32d4b0c05e7 David Howells  2020-04-30  60   * Look up a volume by volume ID 
under RCU conditions.
fc7e32d8695359 David Howells  2020-03-27  61   */
44f32d4b0c05e7 David Howells  2020-04-30  62  static struct afs_volume 
*afs_lookup_volume_rcu(struct afs_cell *cell,
fc7e32d8695359 David Howells  2020-03-27  63                                    
        afs_volid_t vid)
fc7e32d8695359 David Howells  2020-03-27  64  {
44f32d4b0c05e7 David Howells  2020-04-30  65    struct afs_volume *volume = 
NULL;
fc7e32d8695359 David Howells  2020-03-27  66    struct rb_node *p;
fc7e32d8695359 David Howells  2020-03-27  67    int seq = 0;
fc7e32d8695359 David Howells  2020-03-27  68  
fc7e32d8695359 David Howells  2020-03-27  69    do {
fc7e32d8695359 David Howells  2020-03-27  70            /* Unfortunately, 
rbtree walking doesn't give reliable results
fc7e32d8695359 David Howells  2020-03-27  71             * under just the RCU 
read lock, so we have to check for
fc7e32d8695359 David Howells  2020-03-27  72             * changes.
fc7e32d8695359 David Howells  2020-03-27  73             */
44f32d4b0c05e7 David Howells  2020-04-30 @74            
read_seqbegin_or_lock(&cell->volume_lock, &seq);
fc7e32d8695359 David Howells  2020-03-27  75  
44f32d4b0c05e7 David Howells  2020-04-30  76            p = 
rcu_dereference_raw(cell->volumes.rb_node);
fc7e32d8695359 David Howells  2020-03-27  77            while (p) {
44f32d4b0c05e7 David Howells  2020-04-30  78                    volume = 
rb_entry(p, struct afs_volume, cell_node);
fc7e32d8695359 David Howells  2020-03-27  79  
44f32d4b0c05e7 David Howells  2020-04-30  80                    if (volume->vid 
< vid)
fc7e32d8695359 David Howells  2020-03-27  81                            p = 
rcu_dereference_raw(p->rb_left);
44f32d4b0c05e7 David Howells  2020-04-30  82                    else if 
(volume->vid > vid)
fc7e32d8695359 David Howells  2020-03-27  83                            p = 
rcu_dereference_raw(p->rb_right);
fc7e32d8695359 David Howells  2020-03-27  84                    else
fc7e32d8695359 David Howells  2020-03-27  85                            break;
44f32d4b0c05e7 David Howells  2020-04-30  86                    volume = NULL;
fc7e32d8695359 David Howells  2020-03-27  87            }
fc7e32d8695359 David Howells  2020-03-27  88  
44f32d4b0c05e7 David Howells  2020-04-30  89    } while 
(need_seqretry(&cell->volume_lock, seq));
fc7e32d8695359 David Howells  2020-03-27  90  
44f32d4b0c05e7 David Howells  2020-04-30  91    
done_seqretry(&cell->volume_lock, seq);
44f32d4b0c05e7 David Howells  2020-04-30  92    return volume;
fc7e32d8695359 David Howells  2020-03-27  93  }
fc7e32d8695359 David Howells  2020-03-27  94  

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

Attachment: .config.gz
Description: application/gzip

_______________________________________________
kbuild mailing list -- kbuild@lists.01.org
To unsubscribe send an email to kbuild-le...@lists.01.org

Reply via email to