Struct net_device priv_flags
enum netdev_priv_flags { IFF_802_1Q_VLAN, IFF_EBRIDGE, IFF_SLAVE_INACTIVE, IFF_MASTER_8023AD, IFF_MASTER_ALB, IFF_BONDING, IFF_SLAVE_NEEDARP, IFF_ISATAP, IFF_MASTER_ARPMON, IFF_WAN_HDLC, IFF_XMIT_DST_RELEASE, IFF_DONT_BRIDGE, IFF_DISABLE_NETPOLL, IFF_MACVLAN_PORT, IFF_BRIDGE_PORT, IFF_OVS_DATAPATH, IFF_TX_SKB_SHARING, IFF_UNICAST_FLT, IFF_TEAM_PORT, IFF_SUPP_NOFCS, IFF_LIVE_ADDR_CHANGE, IFF_MACVLAN };
IFF_802_1Q_VLAN
802.1Q VLAN device
IFF_EBRIDGE
Ethernet bridging device
IFF_SLAVE_INACTIVE
bonding slave not the curr. active
IFF_MASTER_8023AD
bonding master, 802.3ad
IFF_MASTER_ALB
bonding master, balance-alb
IFF_BONDING
bonding master or slave
IFF_SLAVE_NEEDARP
need ARPs for validation
IFF_ISATAP
ISATAP interface (RFC4214)
IFF_MASTER_ARPMON
bonding master, ARP mon in use
IFF_WAN_HDLC
WAN HDLC device
IFF_XMIT_DST_RELEASE
dev_hard_start_xmit is allowed to release skb->dst
IFF_DONT_BRIDGE
disallow bridging this ether dev
IFF_DISABLE_NETPOLL
disable netpoll at run-time
IFF_MACVLAN_PORT
device used as macvlan port
IFF_BRIDGE_PORT
device used as bridge port
IFF_OVS_DATAPATH
device used as Open vSwitch datapath port
IFF_TX_SKB_SHARING
The interface supports sharing skbs on transmit
IFF_UNICAST_FLT
Supports unicast filtering
IFF_TEAM_PORT
device used as team port
IFF_SUPP_NOFCS
device supports sending custom FCS
IFF_LIVE_ADDR_CHANGE
device supports hardware address change when it's running
IFF_MACVLAN
Macvlan device
These are the struct net_device, they are only set internally by drivers and used in the kernel. These flags are invisible to userspace, this means that the order of these flags can change during any kernel release.
You should have a pretty good reason to be extending these flags.