| From foo@baz Wed May 16 10:37:28 CEST 2018 |
| From: Stephen Hemminger <stephen@networkplumber.org> |
| Date: Wed, 9 May 2018 14:09:04 -0700 |
| Subject: hv_netvsc: set master device |
| |
| From: Stephen Hemminger <stephen@networkplumber.org> |
| |
| [ Upstream commit 97f3efb64323beb0690576e9d74e94998ad6e82a ] |
| |
| The hyper-v transparent bonding should have used master_dev_link. |
| The netvsc device should look like a master bond device not |
| like the upper side of a tunnel. |
| |
| This makes the semantics the same so that userspace applications |
| looking at network devices see the correct master relationshipship. |
| |
| Fixes: 0c195567a8f6 ("netvsc: transparent VF management") |
| Signed-off-by: Stephen Hemminger <stephen@networkplumber.org> |
| Signed-off-by: David S. Miller <davem@davemloft.net> |
| Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org> |
| --- |
| drivers/net/hyperv/netvsc_drv.c | 3 ++- |
| 1 file changed, 2 insertions(+), 1 deletion(-) |
| |
| --- a/drivers/net/hyperv/netvsc_drv.c |
| +++ b/drivers/net/hyperv/netvsc_drv.c |
| @@ -1840,7 +1840,8 @@ static int netvsc_vf_join(struct net_dev |
| goto rx_handler_failed; |
| } |
| |
| - ret = netdev_upper_dev_link(vf_netdev, ndev, NULL); |
| + ret = netdev_master_upper_dev_link(vf_netdev, ndev, |
| + NULL, NULL, NULL); |
| if (ret != 0) { |
| netdev_err(vf_netdev, |
| "can not set master device %s (err = %d)\n", |