diff options
Diffstat (limited to 'net/switchdev/switchdev.c')
-rw-r--r-- | net/switchdev/switchdev.c | 6 |
1 files changed, 0 insertions, 6 deletions
diff --git a/net/switchdev/switchdev.c b/net/switchdev/switchdev.c index 658bc3ac8008..c29f2327f2e6 100644 --- a/net/switchdev/switchdev.c +++ b/net/switchdev/switchdev.c | |||
@@ -656,7 +656,6 @@ struct switchdev_fdb_dump { | |||
656 | struct switchdev_obj obj; | 656 | struct switchdev_obj obj; |
657 | struct sk_buff *skb; | 657 | struct sk_buff *skb; |
658 | struct netlink_callback *cb; | 658 | struct netlink_callback *cb; |
659 | struct net_device *filter_dev; | ||
660 | int idx; | 659 | int idx; |
661 | }; | 660 | }; |
662 | 661 | ||
@@ -669,14 +668,10 @@ static int switchdev_port_fdb_dump_cb(struct net_device *dev, | |||
669 | u32 seq = dump->cb->nlh->nlmsg_seq; | 668 | u32 seq = dump->cb->nlh->nlmsg_seq; |
670 | struct nlmsghdr *nlh; | 669 | struct nlmsghdr *nlh; |
671 | struct ndmsg *ndm; | 670 | struct ndmsg *ndm; |
672 | struct net_device *master = netdev_master_upper_dev_get(dev); | ||
673 | 671 | ||
674 | if (dump->idx < dump->cb->args[0]) | 672 | if (dump->idx < dump->cb->args[0]) |
675 | goto skip; | 673 | goto skip; |
676 | 674 | ||
677 | if (master && dump->filter_dev != master) | ||
678 | goto skip; | ||
679 | |||
680 | nlh = nlmsg_put(dump->skb, portid, seq, RTM_NEWNEIGH, | 675 | nlh = nlmsg_put(dump->skb, portid, seq, RTM_NEWNEIGH, |
681 | sizeof(*ndm), NLM_F_MULTI); | 676 | sizeof(*ndm), NLM_F_MULTI); |
682 | if (!nlh) | 677 | if (!nlh) |
@@ -730,7 +725,6 @@ int switchdev_port_fdb_dump(struct sk_buff *skb, struct netlink_callback *cb, | |||
730 | }, | 725 | }, |
731 | .skb = skb, | 726 | .skb = skb, |
732 | .cb = cb, | 727 | .cb = cb, |
733 | .filter_dev = filter_dev, | ||
734 | .idx = idx, | 728 | .idx = idx, |
735 | }; | 729 | }; |
736 | int err; | 730 | int err; |