diff mbox

[net-next,v3,04/28] net: add netif_is_team_master helper

Message ID 1449141150-8172-5-git-send-email-jiri@resnulli.us
State Accepted, archived
Delegated to: David Miller
Headers show

Commit Message

Jiri Pirko Dec. 3, 2015, 11:12 a.m. UTC
From: Jiri Pirko <jiri@mellanox.com>

Similar to other helpers, caller can use this to find out if device is
team master.

Signed-off-by: Jiri Pirko <jiri@mellanox.com>
---
 drivers/net/team/team.c   | 1 +
 include/linux/netdevice.h | 8 ++++++++
 2 files changed, 9 insertions(+)

Comments

Eric Dumazet Dec. 3, 2015, 12:46 p.m. UTC | #1
On Thu, 2015-12-03 at 12:12 +0100, Jiri Pirko wrote:

>   *	struct net_device - The DEVICE structure.
> @@ -3887,6 +3890,11 @@ static inline bool netif_is_ovs_master(const struct net_device *dev)
>  	return dev->priv_flags & IFF_OPENVSWITCH;
>  }
>  
> +static inline bool netif_is_team_master(struct net_device *dev)
> +{
> +	return dev->priv_flags & IFF_TEAM;
> +}
> +

Please add 'const' qualifiers whenever possible, like for
netif_is_ovs_master(const struct net_device *dev)

--
To unsubscribe from this list: send the line "unsubscribe netdev" in
the body of a message to majordomo@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Jiri Pirko Dec. 3, 2015, 1:49 p.m. UTC | #2
Thu, Dec 03, 2015 at 01:46:01PM CET, eric.dumazet@gmail.com wrote:
>On Thu, 2015-12-03 at 12:12 +0100, Jiri Pirko wrote:
>
>>   *	struct net_device - The DEVICE structure.
>> @@ -3887,6 +3890,11 @@ static inline bool netif_is_ovs_master(const struct net_device *dev)
>>  	return dev->priv_flags & IFF_OPENVSWITCH;
>>  }
>>  
>> +static inline bool netif_is_team_master(struct net_device *dev)
>> +{
>> +	return dev->priv_flags & IFF_TEAM;
>> +}
>> +
>
>Please add 'const' qualifiers whenever possible, like for
>netif_is_ovs_master(const struct net_device *dev)

Okay, will do. Thanks.
--
To unsubscribe from this list: send the line "unsubscribe netdev" in
the body of a message to majordomo@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html
diff mbox

Patch

diff --git a/drivers/net/team/team.c b/drivers/net/team/team.c
index 651d35e..d2f3ee8 100644
--- a/drivers/net/team/team.c
+++ b/drivers/net/team/team.c
@@ -2054,6 +2054,7 @@  static void team_setup(struct net_device *dev)
 	dev->flags |= IFF_MULTICAST;
 	dev->priv_flags &= ~(IFF_XMIT_DST_RELEASE | IFF_TX_SKB_SHARING);
 	dev->priv_flags |= IFF_NO_QUEUE;
+	dev->priv_flags |= IFF_TEAM;
 
 	/*
 	 * Indicate we support unicast address filtering. That way core won't
diff --git a/include/linux/netdevice.h b/include/linux/netdevice.h
index 7d2d1d7..cfb56e0 100644
--- a/include/linux/netdevice.h
+++ b/include/linux/netdevice.h
@@ -1271,6 +1271,7 @@  struct net_device_ops {
  * @IFF_NO_QUEUE: device can run without qdisc attached
  * @IFF_OPENVSWITCH: device is a Open vSwitch master
  * @IFF_L3MDEV_SLAVE: device is enslaved to an L3 master device
+ * @IFF_TEAM: device is a team device
  */
 enum netdev_priv_flags {
 	IFF_802_1Q_VLAN			= 1<<0,
@@ -1297,6 +1298,7 @@  enum netdev_priv_flags {
 	IFF_NO_QUEUE			= 1<<21,
 	IFF_OPENVSWITCH			= 1<<22,
 	IFF_L3MDEV_SLAVE		= 1<<23,
+	IFF_TEAM			= 1<<24,
 };
 
 #define IFF_802_1Q_VLAN			IFF_802_1Q_VLAN
@@ -1323,6 +1325,7 @@  enum netdev_priv_flags {
 #define IFF_NO_QUEUE			IFF_NO_QUEUE
 #define IFF_OPENVSWITCH			IFF_OPENVSWITCH
 #define IFF_L3MDEV_SLAVE		IFF_L3MDEV_SLAVE
+#define IFF_TEAM			IFF_TEAM
 
 /**
  *	struct net_device - The DEVICE structure.
@@ -3887,6 +3890,11 @@  static inline bool netif_is_ovs_master(const struct net_device *dev)
 	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() */
 static inline void netif_keep_dst(struct net_device *dev)
 {