Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

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

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
Loading
Loading
Loading
Loading
+0 −6
Original line number Diff line number Diff line
@@ -656,7 +656,6 @@ struct switchdev_fdb_dump {
	struct switchdev_obj obj;
	struct sk_buff *skb;
	struct netlink_callback *cb;
	struct net_device *filter_dev;
	int idx;
};

@@ -669,14 +668,10 @@ static int switchdev_port_fdb_dump_cb(struct net_device *dev,
	u32 seq = dump->cb->nlh->nlmsg_seq;
	struct nlmsghdr *nlh;
	struct ndmsg *ndm;
	struct net_device *master = netdev_master_upper_dev_get(dev);

	if (dump->idx < dump->cb->args[0])
		goto skip;

	if (master && dump->filter_dev != master)
		goto skip;

	nlh = nlmsg_put(dump->skb, portid, seq, RTM_NEWNEIGH,
			sizeof(*ndm), NLM_F_MULTI);
	if (!nlh)
@@ -730,7 +725,6 @@ int switchdev_port_fdb_dump(struct sk_buff *skb, struct netlink_callback *cb,
		},
		.skb = skb,
		.cb = cb,
		.filter_dev = filter_dev,
		.idx = idx,
	};
	int err;