From: Amol Grover <frextr...@gmail.com> Date: Thu, 14 May 2020 23:31:03 +0530
> During the initialization process, ipmr_new_table() is called > to create new tables which in turn calls ipmr_get_table() which > traverses net->ipv4.mr_tables without holding the writer lock. > However, this is safe to do so as no tables exist at this time. > Hence add a suitable lockdep expression to silence the following > false-positive warning: > > ============================= > WARNING: suspicious RCU usage > 5.7.0-rc3-next-20200428-syzkaller #0 Not tainted > ----------------------------- > net/ipv4/ipmr.c:136 RCU-list traversed in non-reader section!! > > ipmr_get_table+0x130/0x160 net/ipv4/ipmr.c:136 > ipmr_new_table net/ipv4/ipmr.c:403 [inline] > ipmr_rules_init net/ipv4/ipmr.c:248 [inline] > ipmr_net_init+0x133/0x430 net/ipv4/ipmr.c:3089 > > Fixes: f0ad0860d01e ("ipv4: ipmr: support multiple tables") > Reported-by: syzbot+1519f497f2f9f0818...@syzkaller.appspotmail.com > Suggested-by: Jakub Kicinski <k...@kernel.org> > Signed-off-by: Amol Grover <frextr...@gmail.com> Applied.