Lines Matching refs:vlan
8 * VLAN Home Page: http://www.candelatech.com/~greear/vlan.html
30 #include "vlan.h"
49 struct vlan_dev_priv *vlan = vlan_dev_priv(dev);
55 if (!(vlan->flags & VLAN_FLAG_REORDER_HDR)) {
58 vlan_tci = vlan->vlan_id;
71 skb->protocol = vlan->vlan_proto;
72 type = ntohs(vlan->vlan_proto);
81 dev = vlan->real_dev;
88 static inline netdev_tx_t vlan_netpoll_send_skb(struct vlan_dev_priv *vlan, struct sk_buff *skb)
91 return netpoll_send_skb(vlan->netpoll, skb);
101 struct vlan_dev_priv *vlan = vlan_dev_priv(dev);
111 if (vlan->flags & VLAN_FLAG_REORDER_HDR ||
112 veth->h_vlan_proto != vlan->vlan_proto) {
114 vlan_tci = vlan->vlan_id;
116 __vlan_hwaccel_put_tag(skb, vlan->vlan_proto, vlan_tci);
119 skb->dev = vlan->real_dev;
122 return vlan_netpoll_send_skb(vlan, skb);
129 stats = this_cpu_ptr(vlan->vlan_pcpu_stats);
135 this_cpu_inc(vlan->vlan_pcpu_stats->tx_dropped);
159 struct vlan_dev_priv *vlan = vlan_dev_priv(dev);
161 if (vlan->ingress_priority_map[vlan_prio & 0x7] && !skb_prio)
162 vlan->nr_ingress_mappings--;
163 else if (!vlan->ingress_priority_map[vlan_prio & 0x7] && skb_prio)
164 vlan->nr_ingress_mappings++;
166 vlan->ingress_priority_map[vlan_prio & 0x7] = skb_prio;
172 struct vlan_dev_priv *vlan = vlan_dev_priv(dev);
178 mp = vlan->egress_priority_map[skb_prio & 0xF];
182 vlan->nr_egress_mappings--;
184 vlan->nr_egress_mappings++;
192 mp = vlan->egress_priority_map[skb_prio & 0xF];
205 vlan->egress_priority_map[skb_prio & 0xF] = np;
207 vlan->nr_egress_mappings++;
216 struct vlan_dev_priv *vlan = vlan_dev_priv(dev);
217 u32 old_flags = vlan->flags;
224 vlan->flags = (old_flags & ~mask) | (flags & mask);
226 if (netif_running(dev) && (vlan->flags ^ old_flags) & VLAN_FLAG_GVRP) {
227 if (vlan->flags & VLAN_FLAG_GVRP)
233 if (netif_running(dev) && (vlan->flags ^ old_flags) & VLAN_FLAG_MVRP) {
234 if (vlan->flags & VLAN_FLAG_MVRP)
260 struct vlan_dev_priv *vlan = vlan_dev_priv(dev);
261 struct net_device *real_dev = vlan->real_dev;
265 !(vlan->flags & VLAN_FLAG_LOOSE_BINDING))
286 ether_addr_copy(vlan->real_dev_addr, real_dev->dev_addr);
288 if (vlan->flags & VLAN_FLAG_GVRP)
291 if (vlan->flags & VLAN_FLAG_MVRP)
295 !(vlan->flags & VLAN_FLAG_BRIDGE_BINDING))
312 struct vlan_dev_priv *vlan = vlan_dev_priv(dev);
313 struct net_device *real_dev = vlan->real_dev;
325 if (!(vlan->flags & VLAN_FLAG_BRIDGE_BINDING))
492 * vlan network devices have devices nesting below it, and are a special
523 struct vlan_dev_priv *vlan = vlan_dev_priv(dev);
524 struct net_device *real_dev = vlan->real_dev;
538 .name = "vlan",
545 struct vlan_dev_priv *vlan = vlan_dev_priv(dev);
546 struct net_device *real_dev = vlan->real_dev;
557 if (vlan->flags & VLAN_FLAG_BRIDGE_BINDING)
591 if (vlan_hw_offload_capable(real_dev->features, vlan->vlan_proto)) {
605 vlan->vlan_pcpu_stats = netdev_alloc_pcpu_stats(struct vlan_pcpu_stats);
606 if (!vlan->vlan_pcpu_stats)
609 /* Get vlan's reference to real_dev */
619 struct vlan_dev_priv *vlan = vlan_dev_priv(dev);
622 for (i = 0; i < ARRAY_SIZE(vlan->egress_priority_map); i++) {
623 while ((pm = vlan->egress_priority_map[i]) != NULL) {
624 vlan->egress_priority_map[i] = pm->next;
642 * checksum offload on the vlan device.
656 const struct vlan_dev_priv *vlan = vlan_dev_priv(dev);
658 return __ethtool_get_link_ksettings(vlan->real_dev, cmd);
672 const struct vlan_dev_priv *vlan = vlan_dev_priv(dev);
673 const struct ethtool_ops *ops = vlan->real_dev->ethtool_ops;
674 struct phy_device *phydev = vlan->real_dev->phydev;
679 return ops->get_ts_info(vlan->real_dev, info);
731 struct vlan_dev_priv *vlan = vlan_dev_priv(dev);
732 struct net_device *real_dev = vlan->real_dev;
747 vlan->netpoll = netpoll;
755 struct vlan_dev_priv *vlan= vlan_dev_priv(dev);
756 struct netpoll *netpoll = vlan->netpoll;
761 vlan->netpoll = NULL;
815 struct vlan_dev_priv *vlan = vlan_dev_priv(dev);
817 free_percpu(vlan->vlan_pcpu_stats);
818 vlan->vlan_pcpu_stats = NULL;
820 /* Get rid of the vlan's reference to real_dev */
821 dev_put(vlan->real_dev);