* [PATCH net-next 0/3] net: make dev_close void
@ 2017-07-18 22:59 Stephen Hemminger
2017-07-18 22:59 ` [PATCH net-next 1/3] bluetooth: 6lowpan dev_close never returns error Stephen Hemminger
` (3 more replies)
0 siblings, 4 replies; 7+ messages in thread
From: Stephen Hemminger @ 2017-07-18 22:59 UTC (permalink / raw)
To: yisen.zhuang, salil.mehta, davem, marcel, gustavo, johan.hedberg
Cc: netdev, linux-bluetooth, Stephen Hemminger
Noticed while working on other changes. Why is dev_close()
returning int, it should be void. Should also change
ndo_close to be void, but that requires more work and someone
with more coccinelle foo (smpl) than me.
Stephen Hemminger (3):
bluetooth: 6lowpan dev_close never returns error
hns: remove useless void cast
net: make dev_close and related functions void
drivers/net/ethernet/hisilicon/hns/hns_ethtool.c | 2 +-
include/linux/netdevice.h | 4 ++--
net/bluetooth/6lowpan.c | 4 +---
net/core/dev.c | 26 ++++++++++--------------
4 files changed, 15 insertions(+), 21 deletions(-)
--
2.11.0
^ permalink raw reply [flat|nested] 7+ messages in thread
* [PATCH net-next 1/3] bluetooth: 6lowpan dev_close never returns error
2017-07-18 22:59 [PATCH net-next 0/3] net: make dev_close void Stephen Hemminger
@ 2017-07-18 22:59 ` Stephen Hemminger
2017-07-21 10:37 ` kbuild test robot
2017-07-18 22:59 ` [PATCH net-next 2/3] hns: remove useless void cast Stephen Hemminger
` (2 subsequent siblings)
3 siblings, 1 reply; 7+ messages in thread
From: Stephen Hemminger @ 2017-07-18 22:59 UTC (permalink / raw)
To: yisen.zhuang, salil.mehta, davem, marcel, gustavo, johan.hedberg
Cc: netdev, linux-bluetooth, Stephen Hemminger
The function dev_close in current kernel will never return an
error. Later changes will make it void.
Signed-off-by: Stephen Hemminger <sthemmin@microsoft.com>
---
net/bluetooth/6lowpan.c | 4 +---
1 file changed, 1 insertion(+), 3 deletions(-)
diff --git a/net/bluetooth/6lowpan.c b/net/bluetooth/6lowpan.c
index ab3b654b05cc..e542b8959d88 100644
--- a/net/bluetooth/6lowpan.c
+++ b/net/bluetooth/6lowpan.c
@@ -621,9 +621,7 @@ static void ifdown(struct net_device *netdev)
int err;
rtnl_lock();
- err = dev_close(netdev);
- if (err < 0)
- BT_INFO("iface %s cannot be closed (%d)", netdev->name, err);
+ dev_close(netdev);
rtnl_unlock();
}
--
2.11.0
^ permalink raw reply related [flat|nested] 7+ messages in thread
* [PATCH net-next 2/3] hns: remove useless void cast
2017-07-18 22:59 [PATCH net-next 0/3] net: make dev_close void Stephen Hemminger
2017-07-18 22:59 ` [PATCH net-next 1/3] bluetooth: 6lowpan dev_close never returns error Stephen Hemminger
@ 2017-07-18 22:59 ` Stephen Hemminger
[not found] ` <20170718225927.15944-1-sthemmin-0li6OtcxBFHby3iVrkZq2A@public.gmane.org>
2017-07-19 23:42 ` [PATCH net-next 0/3] net: make dev_close void David Miller
3 siblings, 0 replies; 7+ messages in thread
From: Stephen Hemminger @ 2017-07-18 22:59 UTC (permalink / raw)
To: yisen.zhuang, salil.mehta, davem, marcel, gustavo, johan.hedberg
Cc: netdev, linux-bluetooth, Stephen Hemminger
There is no need to cast away return value of dev_close.
Signed-off-by: Stephen Hemminger <sthemmin@microsoft.com>
---
drivers/net/ethernet/hisilicon/hns/hns_ethtool.c | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/drivers/net/ethernet/hisilicon/hns/hns_ethtool.c b/drivers/net/ethernet/hisilicon/hns/hns_ethtool.c
index a8db27e86a11..78cb20c67aa6 100644
--- a/drivers/net/ethernet/hisilicon/hns/hns_ethtool.c
+++ b/drivers/net/ethernet/hisilicon/hns/hns_ethtool.c
@@ -595,7 +595,7 @@ static void hns_nic_self_test(struct net_device *ndev,
set_bit(NIC_STATE_TESTING, &priv->state);
if (if_running)
- (void)dev_close(ndev);
+ dev_close(ndev);
for (i = 0; i < SELF_TEST_TPYE_NUM; i++) {
if (!st_param[i][1])
--
2.11.0
^ permalink raw reply related [flat|nested] 7+ messages in thread
* [PATCH net-next 3/3] net: make dev_close and related functions void
[not found] ` <20170718225927.15944-1-sthemmin-0li6OtcxBFHby3iVrkZq2A@public.gmane.org>
@ 2017-07-18 22:59 ` Stephen Hemminger
0 siblings, 0 replies; 7+ messages in thread
From: Stephen Hemminger @ 2017-07-18 22:59 UTC (permalink / raw)
To: yisen.zhuang-hv44wF8Li93QT0dZR+AlfA,
salil.mehta-hv44wF8Li93QT0dZR+AlfA, davem-fT/PcQaiUtIeIZ0/mPfg9Q,
marcel-kz+m5ild9QBg9hUCZPvPmw, gustavo-THi1TnShQwVAfugRpC6u6w,
johan.hedberg-Re5JQEeQqe8AvxtiuMwx3w
Cc: netdev-u79uwXL29TY76Z2rM5mHXA,
linux-bluetooth-u79uwXL29TY76Z2rM5mHXA, Stephen Hemminger
There is no useful return value from dev_close. All paths return 0.
Change dev_close and helper functions to void.
Signed-off-by: Stephen Hemminger <sthemmin-0li6OtcxBFHby3iVrkZq2A@public.gmane.org>
---
include/linux/netdevice.h | 4 ++--
net/core/dev.c | 26 +++++++++++---------------
2 files changed, 13 insertions(+), 17 deletions(-)
diff --git a/include/linux/netdevice.h b/include/linux/netdevice.h
index c60351b84323..614642eb7eb7 100644
--- a/include/linux/netdevice.h
+++ b/include/linux/netdevice.h
@@ -2432,8 +2432,8 @@ struct net_device *dev_get_by_name_rcu(struct net *net, const char *name);
struct net_device *__dev_get_by_name(struct net *net, const char *name);
int dev_alloc_name(struct net_device *dev, const char *name);
int dev_open(struct net_device *dev);
-int dev_close(struct net_device *dev);
-int dev_close_many(struct list_head *head, bool unlink);
+void dev_close(struct net_device *dev);
+void dev_close_many(struct list_head *head, bool unlink);
void dev_disable_lro(struct net_device *dev);
int dev_loopback_xmit(struct net *net, struct sock *sk, struct sk_buff *newskb);
int dev_queue_xmit(struct sk_buff *skb);
diff --git a/net/core/dev.c b/net/core/dev.c
index 467420eda02e..d1b9c9b6c970 100644
--- a/net/core/dev.c
+++ b/net/core/dev.c
@@ -1413,7 +1413,7 @@ int dev_open(struct net_device *dev)
}
EXPORT_SYMBOL(dev_open);
-static int __dev_close_many(struct list_head *head)
+static void __dev_close_many(struct list_head *head)
{
struct net_device *dev;
@@ -1455,23 +1455,18 @@ static int __dev_close_many(struct list_head *head)
dev->flags &= ~IFF_UP;
netpoll_poll_enable(dev);
}
-
- return 0;
}
-static int __dev_close(struct net_device *dev)
+static void __dev_close(struct net_device *dev)
{
- int retval;
LIST_HEAD(single);
list_add(&dev->close_list, &single);
- retval = __dev_close_many(&single);
+ __dev_close_many(&single);
list_del(&single);
-
- return retval;
}
-int dev_close_many(struct list_head *head, bool unlink)
+void dev_close_many(struct list_head *head, bool unlink)
{
struct net_device *dev, *tmp;
@@ -1488,8 +1483,6 @@ int dev_close_many(struct list_head *head, bool unlink)
if (unlink)
list_del_init(&dev->close_list);
}
-
- return 0;
}
EXPORT_SYMBOL(dev_close_many);
@@ -1502,7 +1495,7 @@ EXPORT_SYMBOL(dev_close_many);
* is then deactivated and finally a %NETDEV_DOWN is sent to the notifier
* chain.
*/
-int dev_close(struct net_device *dev)
+void dev_close(struct net_device *dev)
{
if (dev->flags & IFF_UP) {
LIST_HEAD(single);
@@ -1511,7 +1504,6 @@ int dev_close(struct net_device *dev)
dev_close_many(&single, true);
list_del(&single);
}
- return 0;
}
EXPORT_SYMBOL(dev_close);
@@ -6725,8 +6717,12 @@ int __dev_change_flags(struct net_device *dev, unsigned int flags)
*/
ret = 0;
- if ((old_flags ^ flags) & IFF_UP)
- ret = ((old_flags & IFF_UP) ? __dev_close : __dev_open)(dev);
+ if ((old_flags ^ flags) & IFF_UP) {
+ if (old_flags & IFF_UP)
+ __dev_close(dev);
+ else
+ ret = __dev_open(dev);
+ }
if ((flags ^ dev->gflags) & IFF_PROMISC) {
int inc = (flags & IFF_PROMISC) ? 1 : -1;
--
2.11.0
^ permalink raw reply related [flat|nested] 7+ messages in thread
* Re: [PATCH net-next 0/3] net: make dev_close void
2017-07-18 22:59 [PATCH net-next 0/3] net: make dev_close void Stephen Hemminger
` (2 preceding siblings ...)
[not found] ` <20170718225927.15944-1-sthemmin-0li6OtcxBFHby3iVrkZq2A@public.gmane.org>
@ 2017-07-19 23:42 ` David Miller
3 siblings, 0 replies; 7+ messages in thread
From: David Miller @ 2017-07-19 23:42 UTC (permalink / raw)
To: stephen
Cc: yisen.zhuang, salil.mehta, marcel, gustavo, johan.hedberg, netdev,
linux-bluetooth, sthemmin
From: Stephen Hemminger <stephen@networkplumber.org>
Date: Tue, 18 Jul 2017 15:59:24 -0700
> Noticed while working on other changes. Why is dev_close()
> returning int, it should be void. Should also change
> ndo_close to be void, but that requires more work and someone
> with more coccinelle foo (smpl) than me.
Series applied, thanks.
^ permalink raw reply [flat|nested] 7+ messages in thread
* Re: [PATCH net-next 1/3] bluetooth: 6lowpan dev_close never returns error
2017-07-18 22:59 ` [PATCH net-next 1/3] bluetooth: 6lowpan dev_close never returns error Stephen Hemminger
@ 2017-07-21 10:37 ` kbuild test robot
2017-07-22 6:42 ` Marcel Holtmann
0 siblings, 1 reply; 7+ messages in thread
From: kbuild test robot @ 2017-07-21 10:37 UTC (permalink / raw)
To: Stephen Hemminger
Cc: kbuild-all, yisen.zhuang, salil.mehta, davem, marcel, gustavo,
johan.hedberg, netdev, linux-bluetooth, Stephen Hemminger
[-- Attachment #1: Type: text/plain, Size: 1545 bytes --]
Hi Stephen,
[auto build test WARNING on net-next/master]
url: https://github.com/0day-ci/linux/commits/Stephen-Hemminger/net-make-dev_close-void/20170720-090123
config: x86_64-randconfig-a0-07211734 (attached as .config)
compiler: gcc-4.4 (Debian 4.4.7-8) 4.4.7
reproduce:
# save the attached .config to linux build tree
make ARCH=x86_64
All warnings (new ones prefixed by >>):
net/bluetooth/6lowpan.c: In function 'ifdown':
>> net/bluetooth/6lowpan.c:621: warning: unused variable 'err'
vim +/err +621 net/bluetooth/6lowpan.c
18722c24 Jukka Rissanen 2013-12-11 618
7f118253 Jukka Rissanen 2014-06-18 619 static void ifdown(struct net_device *netdev)
7f118253 Jukka Rissanen 2014-06-18 620 {
7f118253 Jukka Rissanen 2014-06-18 @621 int err;
7f118253 Jukka Rissanen 2014-06-18 622
7f118253 Jukka Rissanen 2014-06-18 623 rtnl_lock();
ca74f73e Stephen Hemminger 2017-07-18 624 dev_close(netdev);
7f118253 Jukka Rissanen 2014-06-18 625 rtnl_unlock();
7f118253 Jukka Rissanen 2014-06-18 626 }
7f118253 Jukka Rissanen 2014-06-18 627
:::::: The code at line 621 was first introduced by commit
:::::: 7f118253820fc3ad38659485adb3ebdfe64820e1 Bluetooth: 6LoWPAN: Remove network devices when unloading
:::::: TO: Jukka Rissanen <jukka.rissanen@linux.intel.com>
:::::: CC: Marcel Holtmann <marcel@holtmann.org>
---
0-DAY kernel test infrastructure Open Source Technology Center
https://lists.01.org/pipermail/kbuild-all Intel Corporation
[-- Attachment #2: .config.gz --]
[-- Type: application/gzip, Size: 30222 bytes --]
^ permalink raw reply [flat|nested] 7+ messages in thread
* Re: [PATCH net-next 1/3] bluetooth: 6lowpan dev_close never returns error
2017-07-21 10:37 ` kbuild test robot
@ 2017-07-22 6:42 ` Marcel Holtmann
0 siblings, 0 replies; 7+ messages in thread
From: Marcel Holtmann @ 2017-07-22 6:42 UTC (permalink / raw)
To: kbuild test robot
Cc: Stephen Hemminger, kbuild-all, yisen.zhuang, salil.mehta,
David S. Miller, Gustavo F. Padovan, Johan Hedberg, netdev,
linux-bluetooth, Stephen Hemminger
Hi Stephen,
> [auto build test WARNING on net-next/master]
>
> url: https://github.com/0day-ci/linux/commits/Stephen-Hemminger/net-make-dev_close-void/20170720-090123
> config: x86_64-randconfig-a0-07211734 (attached as .config)
> compiler: gcc-4.4 (Debian 4.4.7-8) 4.4.7
> reproduce:
> # save the attached .config to linux build tree
> make ARCH=x86_64
>
> All warnings (new ones prefixed by >>):
>
> net/bluetooth/6lowpan.c: In function 'ifdown':
>>> net/bluetooth/6lowpan.c:621: warning: unused variable 'err'
>
> vim +/err +621 net/bluetooth/6lowpan.c
>
> 18722c24 Jukka Rissanen 2013-12-11 618
> 7f118253 Jukka Rissanen 2014-06-18 619 static void ifdown(struct net_device *netdev)
> 7f118253 Jukka Rissanen 2014-06-18 620 {
> 7f118253 Jukka Rissanen 2014-06-18 @621 int err;
> 7f118253 Jukka Rissanen 2014-06-18 622
> 7f118253 Jukka Rissanen 2014-06-18 623 rtnl_lock();
> ca74f73e Stephen Hemminger 2017-07-18 624 dev_close(netdev);
> 7f118253 Jukka Rissanen 2014-06-18 625 rtnl_unlock();
> 7f118253 Jukka Rissanen 2014-06-18 626 }
> 7f118253 Jukka Rissanen 2014-06-18 627
>
> :::::: The code at line 621 was first introduced by commit
> :::::: 7f118253820fc3ad38659485adb3ebdfe64820e1 Bluetooth: 6LoWPAN: Remove network devices when unloading
>
> :::::: TO: Jukka Rissanen <jukka.rissanen@linux.intel.com>
> :::::: CC: Marcel Holtmann <marcel@holtmann.org>
are you going to send a fix for this?
Regards
Marcel
^ permalink raw reply [flat|nested] 7+ messages in thread
end of thread, other threads:[~2017-07-22 6:42 UTC | newest]
Thread overview: 7+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2017-07-18 22:59 [PATCH net-next 0/3] net: make dev_close void Stephen Hemminger
2017-07-18 22:59 ` [PATCH net-next 1/3] bluetooth: 6lowpan dev_close never returns error Stephen Hemminger
2017-07-21 10:37 ` kbuild test robot
2017-07-22 6:42 ` Marcel Holtmann
2017-07-18 22:59 ` [PATCH net-next 2/3] hns: remove useless void cast Stephen Hemminger
[not found] ` <20170718225927.15944-1-sthemmin-0li6OtcxBFHby3iVrkZq2A@public.gmane.org>
2017-07-18 22:59 ` [PATCH net-next 3/3] net: make dev_close and related functions void Stephen Hemminger
2017-07-19 23:42 ` [PATCH net-next 0/3] net: make dev_close void David Miller
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).