Commit 10ea5165 authored by Scott Feldman's avatar Scott Feldman Committed by David S. Miller

switchdev: fdb filter_dev is always NULL for self (device), so remove check

Remove the filter_dev check when dumping fdb entries, otherwise dump
returns empty list.  filter_dev is always passed as NULL when dumping fdbs
on SELF.  We want the fdbs installed on the device to be listed in the
dump.
Signed-off-by: default avatarScott Feldman <sfeldma@gmail.com>
Fixes: 45d4122c ("switchdev: add support for fdb add/del/dump via switchdev_port_obj ops")
Acked-by: default avatarSridhar Samudrala <sridhar.samudrala@intel.com>
Acked-by: default avatarJiri Pirko <jiri@resnulli.us>
Signed-off-by: default avatarDavid S. Miller <davem@davemloft.net>
parent 54db01a2
...@@ -656,7 +656,6 @@ struct switchdev_fdb_dump { ...@@ -656,7 +656,6 @@ struct switchdev_fdb_dump {
struct switchdev_obj obj; struct switchdev_obj obj;
struct sk_buff *skb; struct sk_buff *skb;
struct netlink_callback *cb; struct netlink_callback *cb;
struct net_device *filter_dev;
int idx; int idx;
}; };
...@@ -669,14 +668,10 @@ static int switchdev_port_fdb_dump_cb(struct net_device *dev, ...@@ -669,14 +668,10 @@ static int switchdev_port_fdb_dump_cb(struct net_device *dev,
u32 seq = dump->cb->nlh->nlmsg_seq; u32 seq = dump->cb->nlh->nlmsg_seq;
struct nlmsghdr *nlh; struct nlmsghdr *nlh;
struct ndmsg *ndm; struct ndmsg *ndm;
struct net_device *master = netdev_master_upper_dev_get(dev);
if (dump->idx < dump->cb->args[0]) if (dump->idx < dump->cb->args[0])
goto skip; goto skip;
if (master && dump->filter_dev != master)
goto skip;
nlh = nlmsg_put(dump->skb, portid, seq, RTM_NEWNEIGH, nlh = nlmsg_put(dump->skb, portid, seq, RTM_NEWNEIGH,
sizeof(*ndm), NLM_F_MULTI); sizeof(*ndm), NLM_F_MULTI);
if (!nlh) if (!nlh)
...@@ -730,7 +725,6 @@ int switchdev_port_fdb_dump(struct sk_buff *skb, struct netlink_callback *cb, ...@@ -730,7 +725,6 @@ int switchdev_port_fdb_dump(struct sk_buff *skb, struct netlink_callback *cb,
}, },
.skb = skb, .skb = skb,
.cb = cb, .cb = cb,
.filter_dev = filter_dev,
.idx = idx, .idx = idx,
}; };
int err; int err;
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment