Lines Matching refs:vlan
142 struct batadv_softif_vlan *vlan; in batadv_interface_set_mac_addr() local
157 hlist_for_each_entry_rcu(vlan, &bat_priv->softif_vlan_list, list) { in batadv_interface_set_mac_addr()
158 batadv_tt_local_remove(bat_priv, old_addr, vlan->vid, in batadv_interface_set_mac_addr()
160 batadv_tt_local_add(dev, addr->sa_data, vlan->vid, in batadv_interface_set_mac_addr()
512 struct batadv_softif_vlan *vlan; in batadv_softif_vlan_release() local
514 vlan = container_of(ref, struct batadv_softif_vlan, refcount); in batadv_softif_vlan_release()
516 spin_lock_bh(&vlan->bat_priv->softif_vlan_list_lock); in batadv_softif_vlan_release()
517 hlist_del_rcu(&vlan->list); in batadv_softif_vlan_release()
518 spin_unlock_bh(&vlan->bat_priv->softif_vlan_list_lock); in batadv_softif_vlan_release()
520 kfree_rcu(vlan, rcu); in batadv_softif_vlan_release()
528 void batadv_softif_vlan_put(struct batadv_softif_vlan *vlan) in batadv_softif_vlan_put() argument
530 if (!vlan) in batadv_softif_vlan_put()
533 kref_put(&vlan->refcount, batadv_softif_vlan_release); in batadv_softif_vlan_put()
547 struct batadv_softif_vlan *vlan_tmp, *vlan = NULL; in batadv_softif_vlan_get() local
557 vlan = vlan_tmp; in batadv_softif_vlan_get()
562 return vlan; in batadv_softif_vlan_get()
574 struct batadv_softif_vlan *vlan; in batadv_softif_create_vlan() local
579 vlan = batadv_softif_vlan_get(bat_priv, vid); in batadv_softif_create_vlan()
580 if (vlan) { in batadv_softif_create_vlan()
581 batadv_softif_vlan_put(vlan); in batadv_softif_create_vlan()
586 vlan = kzalloc(sizeof(*vlan), GFP_ATOMIC); in batadv_softif_create_vlan()
587 if (!vlan) { in batadv_softif_create_vlan()
592 vlan->bat_priv = bat_priv; in batadv_softif_create_vlan()
593 vlan->vid = vid; in batadv_softif_create_vlan()
594 kref_init(&vlan->refcount); in batadv_softif_create_vlan()
596 atomic_set(&vlan->ap_isolation, 0); in batadv_softif_create_vlan()
598 kref_get(&vlan->refcount); in batadv_softif_create_vlan()
599 hlist_add_head_rcu(&vlan->list, &bat_priv->softif_vlan_list); in batadv_softif_create_vlan()
605 err = batadv_sysfs_add_vlan(bat_priv->soft_iface, vlan); in batadv_softif_create_vlan()
608 batadv_softif_vlan_put(vlan); in batadv_softif_create_vlan()
611 batadv_softif_vlan_put(vlan); in batadv_softif_create_vlan()
623 batadv_softif_vlan_put(vlan); in batadv_softif_create_vlan()
634 struct batadv_softif_vlan *vlan) in batadv_softif_destroy_vlan() argument
640 vlan->vid, "vlan interface destroyed", false); in batadv_softif_destroy_vlan()
642 batadv_sysfs_del_vlan(bat_priv, vlan); in batadv_softif_destroy_vlan()
643 batadv_softif_vlan_put(vlan); in batadv_softif_destroy_vlan()
661 struct batadv_softif_vlan *vlan; in batadv_interface_add_vid() local
678 vlan = batadv_softif_vlan_get(bat_priv, vid); in batadv_interface_add_vid()
679 if (!vlan) in batadv_interface_add_vid()
685 if (!vlan->kobj) { in batadv_interface_add_vid()
686 ret = batadv_sysfs_add_vlan(bat_priv->soft_iface, vlan); in batadv_interface_add_vid()
688 batadv_softif_vlan_put(vlan); in batadv_interface_add_vid()
720 struct batadv_softif_vlan *vlan; in batadv_interface_kill_vid() local
728 vlan = batadv_softif_vlan_get(bat_priv, vid | BATADV_VLAN_HAS_TAG); in batadv_interface_kill_vid()
729 if (!vlan) in batadv_interface_kill_vid()
732 batadv_softif_destroy_vlan(bat_priv, vlan); in batadv_interface_kill_vid()
735 batadv_softif_vlan_put(vlan); in batadv_interface_kill_vid()
1117 struct batadv_softif_vlan *vlan; in batadv_softif_destroy_sysfs() local
1122 vlan = batadv_softif_vlan_get(bat_priv, BATADV_NO_FLAGS); in batadv_softif_destroy_sysfs()
1123 if (vlan) { in batadv_softif_destroy_sysfs()
1124 batadv_softif_destroy_vlan(bat_priv, vlan); in batadv_softif_destroy_sysfs()
1125 batadv_softif_vlan_put(vlan); in batadv_softif_destroy_sysfs()
1143 struct batadv_softif_vlan *vlan; in batadv_softif_destroy_netlink() local
1152 vlan = batadv_softif_vlan_get(bat_priv, BATADV_NO_FLAGS); in batadv_softif_destroy_netlink()
1153 if (vlan) { in batadv_softif_destroy_netlink()
1154 batadv_softif_destroy_vlan(bat_priv, vlan); in batadv_softif_destroy_netlink()
1155 batadv_softif_vlan_put(vlan); in batadv_softif_destroy_netlink()