[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Date: Tue, 6 Jun 2017 13:17:16 +0800
From: kbuild test robot <lkp@...el.com>
To: Stephen Hemminger <stephen@...workplumber.org>
Cc: kbuild-all@...org, davem@...emloft.net, netdev@...r.kernel.org,
Stephen Hemminger <sthemmin@...rosoft.com>
Subject: Re: [PATCH net 3/3] netvsc: fix RCU warning from set_multicast
Hi Stephen,
[auto build test ERROR on net/master]
url: https://github.com/0day-ci/linux/commits/Stephen-Hemminger/netvsc-bug-fixes/20170606-120730
config: x86_64-allyesdebian (attached as .config)
compiler: gcc-6 (Debian 6.2.0-3) 6.2.0 20160901
reproduce:
# save the attached .config to linux build tree
make ARCH=x86_64
All error/warnings (new ones prefixed by >>):
drivers/net//hyperv/netvsc_drv.c: In function 'do_set_multicast':
drivers/net//hyperv/netvsc_drv.c:70:2: warning: this 'if' clause does not guard... [-Wmisleading-indentation]
if (nvdev)
^~
drivers/net//hyperv/netvsc_drv.c:73:3: note: ...this statement, but the latter is misleadingly indented as if it is guarded by the 'if'
if (rdev) {
^~
drivers/net//hyperv/netvsc_drv.c: At top level:
>> drivers/net//hyperv/netvsc_drv.c:84:2: warning: data definition has no type or storage class
rtnl_unlock();
^~~~~~~~~~~
>> drivers/net//hyperv/netvsc_drv.c:84:2: error: type defaults to 'int' in declaration of 'rtnl_unlock' [-Werror=implicit-int]
>> drivers/net//hyperv/netvsc_drv.c:84:2: error: function declaration isn't a prototype [-Werror=strict-prototypes]
>> drivers/net//hyperv/netvsc_drv.c:84:2: error: conflicting types for 'rtnl_unlock'
In file included from include/linux/inetdevice.h:13:0,
from drivers/net//hyperv/netvsc_drv.c:30:
include/linux/rtnetlink.h:28:13: note: previous declaration of 'rtnl_unlock' was here
extern void rtnl_unlock(void);
^~~~~~~~~~~
>> drivers/net//hyperv/netvsc_drv.c:85:1: error: expected identifier or '(' before '}' token
}
^
cc1: some warnings being treated as errors
vim +84 drivers/net//hyperv/netvsc_drv.c
64 struct net_device *ndev = hv_get_drvdata(device_obj);
65 struct netvsc_device *nvdev;
66 struct rndis_device *rdev;
67
68 rtnl_lock();
69 nvdev = rtnl_dereference(ndevctx->nvdev);
> 70 if (nvdev)
71 rdev = nvdev->extension;
72
> 73 if (rdev) {
74 if (ndev->flags & IFF_PROMISC)
75 rndis_filter_set_packet_filter(rdev,
76 NDIS_PACKET_TYPE_PROMISCUOUS);
77 else
78 rndis_filter_set_packet_filter(rdev,
79 NDIS_PACKET_TYPE_BROADCAST |
80 NDIS_PACKET_TYPE_ALL_MULTICAST |
81 NDIS_PACKET_TYPE_DIRECTED);
82 }
83 }
> 84 rtnl_unlock();
> 85 }
86
87 static void netvsc_set_multicast_list(struct net_device *net)
88 {
---
0-DAY kernel test infrastructure Open Source Technology Center
https://lists.01.org/pipermail/kbuild-all Intel Corporation
Download attachment ".config.gz" of type "application/gzip" (38856 bytes)
Powered by blists - more mailing lists