diff options
author | Nicolas Dichtel <nicolas.dichtel@6wind.com> | 2015-04-28 12:33:49 -0400 |
---|---|---|
committer | David S. Miller <davem@davemloft.net> | 2015-04-29 14:59:16 -0400 |
commit | 46c264daaaa569e24f8aba877d0fd8167c42a9a4 (patch) | |
tree | 355db83db4d85e7ebb8f42cb96ba9a71dace8750 /include/linux/netdevice.h | |
parent | 821996795973fd52703c35811a03db9fec1ac141 (diff) |
bridge/nl: remove wrong use of NLM_F_MULTI
NLM_F_MULTI must be used only when a NLMSG_DONE message is sent. In fact,
it is sent only at the end of a dump.
Libraries like libnl will wait forever for NLMSG_DONE.
Fixes: e5a55a898720 ("net: create generic bridge ops")
Fixes: 815cccbf10b2 ("ixgbe: add setlink, getlink support to ixgbe and ixgbevf")
CC: John Fastabend <john.r.fastabend@intel.com>
CC: Sathya Perla <sathya.perla@emulex.com>
CC: Subbu Seetharaman <subbu.seetharaman@emulex.com>
CC: Ajit Khaparde <ajit.khaparde@emulex.com>
CC: Jeff Kirsher <jeffrey.t.kirsher@intel.com>
CC: intel-wired-lan@lists.osuosl.org
CC: Jiri Pirko <jiri@resnulli.us>
CC: Scott Feldman <sfeldma@gmail.com>
CC: Stephen Hemminger <stephen@networkplumber.org>
CC: bridge@lists.linux-foundation.org
Signed-off-by: Nicolas Dichtel <nicolas.dichtel@6wind.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
Diffstat (limited to 'include/linux/netdevice.h')
-rw-r--r-- | include/linux/netdevice.h | 6 |
1 files changed, 4 insertions, 2 deletions
diff --git a/include/linux/netdevice.h b/include/linux/netdevice.h index dbad4d728b4b..1899c74a7127 100644 --- a/include/linux/netdevice.h +++ b/include/linux/netdevice.h | |||
@@ -977,7 +977,8 @@ typedef u16 (*select_queue_fallback_t)(struct net_device *dev, | |||
977 | * int (*ndo_bridge_setlink)(struct net_device *dev, struct nlmsghdr *nlh, | 977 | * int (*ndo_bridge_setlink)(struct net_device *dev, struct nlmsghdr *nlh, |
978 | * u16 flags) | 978 | * u16 flags) |
979 | * int (*ndo_bridge_getlink)(struct sk_buff *skb, u32 pid, u32 seq, | 979 | * int (*ndo_bridge_getlink)(struct sk_buff *skb, u32 pid, u32 seq, |
980 | * struct net_device *dev, u32 filter_mask) | 980 | * struct net_device *dev, u32 filter_mask, |
981 | * int nlflags) | ||
981 | * int (*ndo_bridge_dellink)(struct net_device *dev, struct nlmsghdr *nlh, | 982 | * int (*ndo_bridge_dellink)(struct net_device *dev, struct nlmsghdr *nlh, |
982 | * u16 flags); | 983 | * u16 flags); |
983 | * | 984 | * |
@@ -1173,7 +1174,8 @@ struct net_device_ops { | |||
1173 | int (*ndo_bridge_getlink)(struct sk_buff *skb, | 1174 | int (*ndo_bridge_getlink)(struct sk_buff *skb, |
1174 | u32 pid, u32 seq, | 1175 | u32 pid, u32 seq, |
1175 | struct net_device *dev, | 1176 | struct net_device *dev, |
1176 | u32 filter_mask); | 1177 | u32 filter_mask, |
1178 | int nlflags); | ||
1177 | int (*ndo_bridge_dellink)(struct net_device *dev, | 1179 | int (*ndo_bridge_dellink)(struct net_device *dev, |
1178 | struct nlmsghdr *nlh, | 1180 | struct nlmsghdr *nlh, |
1179 | u16 flags); | 1181 | u16 flags); |