Lines Matching refs:bat_priv
98 batadv_kobj_to_vlan(struct batadv_priv *bat_priv, struct kobject *obj) in batadv_kobj_to_vlan() argument
103 hlist_for_each_entry_rcu(vlan_tmp, &bat_priv->softif_vlan_list, list) { in batadv_kobj_to_vlan()
142 struct batadv_priv *bat_priv = netdev_priv(net_dev); \
147 &bat_priv->_name, net_dev); \
149 batadv_netlink_notify_mesh(bat_priv); \
158 struct batadv_priv *bat_priv = batadv_kobj_to_batpriv(kobj); \
162 atomic_read(&bat_priv->_name) == 0 ? \
181 struct batadv_priv *bat_priv = netdev_priv(net_dev); \
187 &bat_priv->_var, net_dev, \
190 batadv_netlink_notify_mesh(bat_priv); \
199 struct batadv_priv *bat_priv = batadv_kobj_to_batpriv(kobj); \
202 return sprintf(buff, "%i\n", atomic_read(&bat_priv->_var)); \
219 struct batadv_priv *bat_priv = batadv_vlan_kobj_to_batpriv(kobj);\
220 struct batadv_softif_vlan *vlan = batadv_kobj_to_vlan(bat_priv, \
224 bat_priv->soft_iface); \
228 batadv_netlink_notify_vlan(bat_priv, vlan); \
230 batadv_netlink_notify_mesh(bat_priv); \
240 struct batadv_priv *bat_priv = batadv_vlan_kobj_to_batpriv(kobj);\
241 struct batadv_softif_vlan *vlan = batadv_kobj_to_vlan(bat_priv, \
266 struct batadv_priv *bat_priv; \
281 bat_priv = netdev_priv(hard_iface->soft_iface); \
282 batadv_netlink_notify_hardif(bat_priv, hard_iface); \
440 struct batadv_priv *bat_priv = batadv_kobj_to_batpriv(kobj); in batadv_show_bat_algo() local
443 return sprintf(buff, "%s\n", bat_priv->algo_ops->name); in batadv_show_bat_algo()
448 struct batadv_priv *bat_priv = netdev_priv(net_dev); in batadv_post_gw_reselect() local
450 batadv_gw_reselect(bat_priv); in batadv_post_gw_reselect()
456 struct batadv_priv *bat_priv = batadv_kobj_to_batpriv(kobj); in batadv_show_gw_mode() local
464 if (!bat_priv->algo_ops->gw.get_best_gw_node || in batadv_show_gw_mode()
465 !bat_priv->algo_ops->gw.is_eligible) in batadv_show_gw_mode()
468 switch (atomic_read(&bat_priv->gw.mode)) { in batadv_show_gw_mode()
491 struct batadv_priv *bat_priv = netdev_priv(net_dev); in batadv_store_gw_mode() local
500 if (!bat_priv->algo_ops->gw.get_best_gw_node || in batadv_store_gw_mode()
501 !bat_priv->algo_ops->gw.is_eligible) in batadv_store_gw_mode()
526 if (atomic_read(&bat_priv->gw.mode) == gw_mode_tmp) in batadv_store_gw_mode()
529 switch (atomic_read(&bat_priv->gw.mode)) { in batadv_store_gw_mode()
553 batadv_gw_reselect(bat_priv); in batadv_store_gw_mode()
557 batadv_gw_check_client_stop(bat_priv); in batadv_store_gw_mode()
558 atomic_set(&bat_priv->gw.mode, (unsigned int)gw_mode_tmp); in batadv_store_gw_mode()
559 batadv_gw_tvlv_container_update(bat_priv); in batadv_store_gw_mode()
561 batadv_netlink_notify_mesh(bat_priv); in batadv_store_gw_mode()
569 struct batadv_priv *bat_priv = batadv_kobj_to_batpriv(kobj); in batadv_show_gw_sel_class() local
576 if (!bat_priv->algo_ops->gw.get_best_gw_node || in batadv_show_gw_sel_class()
577 !bat_priv->algo_ops->gw.is_eligible) in batadv_show_gw_sel_class()
580 if (bat_priv->algo_ops->gw.show_sel_class) in batadv_show_gw_sel_class()
581 return bat_priv->algo_ops->gw.show_sel_class(bat_priv, buff); in batadv_show_gw_sel_class()
583 return sprintf(buff, "%i\n", atomic_read(&bat_priv->gw.sel_class)); in batadv_show_gw_sel_class()
590 struct batadv_priv *bat_priv = batadv_kobj_to_batpriv(kobj); in batadv_store_gw_sel_class() local
598 if (!bat_priv->algo_ops->gw.get_best_gw_node || in batadv_store_gw_sel_class()
599 !bat_priv->algo_ops->gw.is_eligible) in batadv_store_gw_sel_class()
605 if (bat_priv->algo_ops->gw.store_sel_class) in batadv_store_gw_sel_class()
606 return bat_priv->algo_ops->gw.store_sel_class(bat_priv, buff, in batadv_store_gw_sel_class()
611 &bat_priv->gw.sel_class, in batadv_store_gw_sel_class()
612 bat_priv->soft_iface, NULL); in batadv_store_gw_sel_class()
614 batadv_netlink_notify_mesh(bat_priv); in batadv_store_gw_sel_class()
622 struct batadv_priv *bat_priv = batadv_kobj_to_batpriv(kobj); in batadv_show_gw_bwidth() local
627 down = atomic_read(&bat_priv->gw.bandwidth_down); in batadv_show_gw_bwidth()
628 up = atomic_read(&bat_priv->gw.bandwidth_up); in batadv_show_gw_bwidth()
638 struct batadv_priv *bat_priv = batadv_kobj_to_batpriv(kobj); in batadv_store_gw_bwidth() local
649 batadv_netlink_notify_mesh(bat_priv); in batadv_store_gw_bwidth()
666 struct batadv_priv *bat_priv = batadv_kobj_to_batpriv(kobj); in batadv_show_isolation_mark() local
669 return sprintf(buff, "%#.8x/%#.8x\n", bat_priv->isolation_mark, in batadv_show_isolation_mark()
670 bat_priv->isolation_mark_mask); in batadv_show_isolation_mark()
688 struct batadv_priv *bat_priv = netdev_priv(net_dev); in batadv_store_isolation_mark() local
714 bat_priv->isolation_mark_mask = mask; in batadv_store_isolation_mark()
716 bat_priv->isolation_mark = mark & bat_priv->isolation_mark_mask; in batadv_store_isolation_mark()
720 bat_priv->isolation_mark, bat_priv->isolation_mark_mask); in batadv_store_isolation_mark()
722 batadv_netlink_notify_mesh(bat_priv); in batadv_store_isolation_mark()
804 struct batadv_priv *bat_priv = netdev_priv(dev); in batadv_sysfs_add_meshif() local
808 bat_priv->mesh_obj = kobject_create_and_add(BATADV_SYSFS_IF_MESH_SUBDIR, in batadv_sysfs_add_meshif()
810 if (!bat_priv->mesh_obj) { in batadv_sysfs_add_meshif()
817 err = sysfs_create_file(bat_priv->mesh_obj, in batadv_sysfs_add_meshif()
831 sysfs_remove_file(bat_priv->mesh_obj, &((*bat_attr)->attr)); in batadv_sysfs_add_meshif()
833 kobject_uevent(bat_priv->mesh_obj, KOBJ_REMOVE); in batadv_sysfs_add_meshif()
834 kobject_del(bat_priv->mesh_obj); in batadv_sysfs_add_meshif()
835 kobject_put(bat_priv->mesh_obj); in batadv_sysfs_add_meshif()
836 bat_priv->mesh_obj = NULL; in batadv_sysfs_add_meshif()
847 struct batadv_priv *bat_priv = netdev_priv(dev); in batadv_sysfs_del_meshif() local
851 sysfs_remove_file(bat_priv->mesh_obj, &((*bat_attr)->attr)); in batadv_sysfs_del_meshif()
853 kobject_uevent(bat_priv->mesh_obj, KOBJ_REMOVE); in batadv_sysfs_del_meshif()
854 kobject_del(bat_priv->mesh_obj); in batadv_sysfs_del_meshif()
855 kobject_put(bat_priv->mesh_obj); in batadv_sysfs_del_meshif()
856 bat_priv->mesh_obj = NULL; in batadv_sysfs_del_meshif()
870 struct batadv_priv *bat_priv = netdev_priv(dev); in batadv_sysfs_add_vlan() local
879 bat_priv->mesh_obj); in batadv_sysfs_add_vlan()
889 vlan->kobj = bat_priv->mesh_obj; in batadv_sysfs_add_vlan()
890 kobject_get(bat_priv->mesh_obj); in batadv_sysfs_add_vlan()
910 if (vlan->kobj != bat_priv->mesh_obj) { in batadv_sysfs_add_vlan()
925 void batadv_sysfs_del_vlan(struct batadv_priv *bat_priv, in batadv_sysfs_del_vlan() argument
933 if (vlan->kobj != bat_priv->mesh_obj) { in batadv_sysfs_del_vlan()
1136 struct batadv_priv *bat_priv; in batadv_store_throughput_override() local
1168 bat_priv = netdev_priv(hard_iface->soft_iface); in batadv_store_throughput_override()
1169 batadv_netlink_notify_hardif(bat_priv, hard_iface); in batadv_store_throughput_override()