Commit c981e421 authored by Jiri Pirko's avatar Jiri Pirko Committed by David S. Miller

net: add netif_is_team_master helper

Similar to other helpers, caller can use this to find out if device is
team master.
Signed-off-by: default avatarJiri Pirko <jiri@mellanox.com>
Signed-off-by: default avatarDavid S. Miller <davem@davemloft.net>
parent 3952af4d
...@@ -2054,6 +2054,7 @@ static void team_setup(struct net_device *dev) ...@@ -2054,6 +2054,7 @@ static void team_setup(struct net_device *dev)
dev->flags |= IFF_MULTICAST; dev->flags |= IFF_MULTICAST;
dev->priv_flags &= ~(IFF_XMIT_DST_RELEASE | IFF_TX_SKB_SHARING); dev->priv_flags &= ~(IFF_XMIT_DST_RELEASE | IFF_TX_SKB_SHARING);
dev->priv_flags |= IFF_NO_QUEUE; dev->priv_flags |= IFF_NO_QUEUE;
dev->priv_flags |= IFF_TEAM;
/* /*
* Indicate we support unicast address filtering. That way core won't * Indicate we support unicast address filtering. That way core won't
......
...@@ -1273,6 +1273,7 @@ struct net_device_ops { ...@@ -1273,6 +1273,7 @@ struct net_device_ops {
* @IFF_NO_QUEUE: device can run without qdisc attached * @IFF_NO_QUEUE: device can run without qdisc attached
* @IFF_OPENVSWITCH: device is a Open vSwitch master * @IFF_OPENVSWITCH: device is a Open vSwitch master
* @IFF_L3MDEV_SLAVE: device is enslaved to an L3 master device * @IFF_L3MDEV_SLAVE: device is enslaved to an L3 master device
* @IFF_TEAM: device is a team device
*/ */
enum netdev_priv_flags { enum netdev_priv_flags {
IFF_802_1Q_VLAN = 1<<0, IFF_802_1Q_VLAN = 1<<0,
...@@ -1299,6 +1300,7 @@ enum netdev_priv_flags { ...@@ -1299,6 +1300,7 @@ enum netdev_priv_flags {
IFF_NO_QUEUE = 1<<21, IFF_NO_QUEUE = 1<<21,
IFF_OPENVSWITCH = 1<<22, IFF_OPENVSWITCH = 1<<22,
IFF_L3MDEV_SLAVE = 1<<23, IFF_L3MDEV_SLAVE = 1<<23,
IFF_TEAM = 1<<24,
}; };
#define IFF_802_1Q_VLAN IFF_802_1Q_VLAN #define IFF_802_1Q_VLAN IFF_802_1Q_VLAN
...@@ -1325,6 +1327,7 @@ enum netdev_priv_flags { ...@@ -1325,6 +1327,7 @@ enum netdev_priv_flags {
#define IFF_NO_QUEUE IFF_NO_QUEUE #define IFF_NO_QUEUE IFF_NO_QUEUE
#define IFF_OPENVSWITCH IFF_OPENVSWITCH #define IFF_OPENVSWITCH IFF_OPENVSWITCH
#define IFF_L3MDEV_SLAVE IFF_L3MDEV_SLAVE #define IFF_L3MDEV_SLAVE IFF_L3MDEV_SLAVE
#define IFF_TEAM IFF_TEAM
/** /**
* struct net_device - The DEVICE structure. * struct net_device - The DEVICE structure.
...@@ -3889,6 +3892,11 @@ static inline bool netif_is_ovs_master(const struct net_device *dev) ...@@ -3889,6 +3892,11 @@ static inline bool netif_is_ovs_master(const struct net_device *dev)
return dev->priv_flags & IFF_OPENVSWITCH; return dev->priv_flags & IFF_OPENVSWITCH;
} }
static inline bool netif_is_team_master(struct net_device *dev)
{
return dev->priv_flags & IFF_TEAM;
}
/* This device needs to keep skb dst for qdisc enqueue or ndo_start_xmit() */ /* This device needs to keep skb dst for qdisc enqueue or ndo_start_xmit() */
static inline void netif_keep_dst(struct net_device *dev) static inline void netif_keep_dst(struct net_device *dev)
{ {
......
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