diff options
author | David S. Miller <davem@davemloft.net> | 2019-06-22 08:59:24 -0400 |
---|---|---|
committer | David S. Miller <davem@davemloft.net> | 2019-06-22 08:59:24 -0400 |
commit | 92ad6325cb891bb455487bfe90cc47d18aa6ec37 (patch) | |
tree | 433a7ef938fae69789216043f67eff9f9c6b0c68 /drivers/net/tun.c | |
parent | e0effb5fbd56a8b2b8917611cbf4fcd9aba92b8f (diff) | |
parent | c356dc4b540edd6c02b409dd8cf3208ba2804c38 (diff) |
Merge git://git.kernel.org/pub/scm/linux/kernel/git/davem/net
Minor SPDX change conflict.
Signed-off-by: David S. Miller <davem@davemloft.net>
Diffstat (limited to 'drivers/net/tun.c')
-rw-r--r-- | drivers/net/tun.c | 19 |
1 files changed, 9 insertions, 10 deletions
diff --git a/drivers/net/tun.c b/drivers/net/tun.c index c452d6d831dd..d7c55e0fa8f4 100644 --- a/drivers/net/tun.c +++ b/drivers/net/tun.c @@ -1014,18 +1014,8 @@ static void tun_net_uninit(struct net_device *dev) /* Net device open. */ static int tun_net_open(struct net_device *dev) { - struct tun_struct *tun = netdev_priv(dev); - int i; - netif_tx_start_all_queues(dev); - for (i = 0; i < tun->numqueues; i++) { - struct tun_file *tfile; - - tfile = rtnl_dereference(tun->tfiles[i]); - tfile->socket.sk->sk_write_space(tfile->socket.sk); - } - return 0; } @@ -3634,6 +3624,7 @@ static int tun_device_event(struct notifier_block *unused, { struct net_device *dev = netdev_notifier_info_to_dev(ptr); struct tun_struct *tun = netdev_priv(dev); + int i; if (dev->rtnl_link_ops != &tun_link_ops) return NOTIFY_DONE; @@ -3643,6 +3634,14 @@ static int tun_device_event(struct notifier_block *unused, if (tun_queue_resize(tun)) return NOTIFY_BAD; break; + case NETDEV_UP: + for (i = 0; i < tun->numqueues; i++) { + struct tun_file *tfile; + + tfile = rtnl_dereference(tun->tfiles[i]); + tfile->socket.sk->sk_write_space(tfile->socket.sk); + } + break; default: break; } |