tree:   https://git.kernel.org/pub/scm/linux/kernel/git/davem/net-next.git 
master
head:   a3fde2addd5f0218b64102005a237ef727b0dc30
commit: addf9b90de22f7aaad0db39bccb5d51ac47dd4e1 [134/141] net: rtnetlink: use 
rcu to free rtnl message handlers
reproduce:
        # apt-get install sparse
        git checkout addf9b90de22f7aaad0db39bccb5d51ac47dd4e1
        make ARCH=x86_64 allmodconfig
        make C=1 CF=-D__CHECK_ENDIAN__


sparse warnings: (new ones prefixed by >>)


vim +155 net/core/rtnetlink.c

   147  
   148  static struct rtnl_link *rtnl_get_link(int protocol, int msgtype)
   149  {
   150          struct rtnl_link **tab;
   151  
   152          if (protocol >= ARRAY_SIZE(rtnl_msg_handlers))
   153                  protocol = PF_UNSPEC;
   154  
 > 155          tab = rcu_dereference_rtnl(rtnl_msg_handlers[protocol]);
   156          if (!tab)
   157                  tab = 
rcu_dereference_rtnl(rtnl_msg_handlers[PF_UNSPEC]);
   158  
   159          return tab[msgtype];
   160  }
   161  

---
0-DAY kernel test infrastructure                Open Source Technology Center
https://lists.01.org/pipermail/kbuild-all                   Intel Corporation

Reply via email to