Browse Source

net: bridge: export vlan flags with the stats

Use one of the vlan xstats padding fields to export the vlan flags. This is
needed in order to be able to distinguish between master (bridge) and port
vlan entries in user-space when dumping the bridge vlan stats.

Signed-off-by: Nikolay Aleksandrov <nikolay@cumulusnetworks.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
Nikolay Aleksandrov 9 years ago
parent
commit
61ba1a2da9
2 changed files with 2 additions and 1 deletions
  1. 1 1
      include/uapi/linux/if_bridge.h
  2. 1 0
      net/bridge/br_netlink.c

+ 1 - 1
include/uapi/linux/if_bridge.h

@@ -140,7 +140,7 @@ struct bridge_vlan_xstats {
 	__u64 tx_bytes;
 	__u64 tx_bytes;
 	__u64 tx_packets;
 	__u64 tx_packets;
 	__u16 vid;
 	__u16 vid;
-	__u16 pad1;
+	__u16 flags;
 	__u32 pad2;
 	__u32 pad2;
 };
 };
 
 

+ 1 - 0
net/bridge/br_netlink.c

@@ -1321,6 +1321,7 @@ static int br_fill_linkxstats(struct sk_buff *skb,
 				continue;
 				continue;
 			memset(&vxi, 0, sizeof(vxi));
 			memset(&vxi, 0, sizeof(vxi));
 			vxi.vid = v->vid;
 			vxi.vid = v->vid;
+			vxi.flags = v->flags;
 			br_vlan_get_stats(v, &stats);
 			br_vlan_get_stats(v, &stats);
 			vxi.rx_bytes = stats.rx_bytes;
 			vxi.rx_bytes = stats.rx_bytes;
 			vxi.rx_packets = stats.rx_packets;
 			vxi.rx_packets = stats.rx_packets;