Lines Matching refs:publ
115 struct sk_buff *tipc_named_publish(struct net *net, struct publication *publ) in tipc_named_publish() argument
121 list_add_tail_rcu(&publ->local_list, in tipc_named_publish()
122 &tn->nametbl->publ_list[publ->scope]); in tipc_named_publish()
124 if (publ->scope == TIPC_NODE_SCOPE) in tipc_named_publish()
134 publ_to_item(item, publ); in tipc_named_publish()
141 struct sk_buff *tipc_named_withdraw(struct net *net, struct publication *publ) in tipc_named_withdraw() argument
146 list_del(&publ->local_list); in tipc_named_withdraw()
148 if (publ->scope == TIPC_NODE_SCOPE) in tipc_named_withdraw()
158 publ_to_item(item, publ); in tipc_named_withdraw()
171 struct publication *publ; in named_distribute() local
178 list_for_each_entry(publ, pls, local_list) { in named_distribute()
191 publ_to_item(item, publ); in named_distribute()
229 static void tipc_publ_subscribe(struct net *net, struct publication *publ, in tipc_publ_subscribe() argument
245 list_add_tail(&publ->nodesub_list, &node->publ_list); in tipc_publ_subscribe()
250 static void tipc_publ_unsubscribe(struct net *net, struct publication *publ, in tipc_publ_unsubscribe() argument
260 list_del_init(&publ->nodesub_list); in tipc_publ_unsubscribe()
271 static void tipc_publ_purge(struct net *net, struct publication *publ, u32 addr) in tipc_publ_purge() argument
277 p = tipc_nametbl_remove_publ(net, publ->type, publ->lower, in tipc_publ_purge()
278 publ->node, publ->ref, publ->key); in tipc_publ_purge()
283 if (p != publ) { in tipc_publ_purge()
286 publ->type, publ->lower, publ->node, publ->ref, in tipc_publ_purge()
287 publ->key); in tipc_publ_purge()
295 struct publication *publ, *tmp; in tipc_publ_notify() local
297 list_for_each_entry_safe(publ, tmp, nsub_list, nodesub_list) in tipc_publ_notify()
298 tipc_publ_purge(net, publ, addr); in tipc_publ_notify()
311 struct publication *publ = NULL; in tipc_update_nametbl() local
314 publ = tipc_nametbl_insert_publ(net, ntohl(i->type), in tipc_update_nametbl()
319 if (publ) { in tipc_update_nametbl()
320 tipc_publ_subscribe(net, publ, node); in tipc_update_nametbl()
324 publ = tipc_nametbl_remove_publ(net, ntohl(i->type), in tipc_update_nametbl()
328 if (publ) { in tipc_update_nametbl()
329 tipc_publ_unsubscribe(net, publ, node); in tipc_update_nametbl()
330 kfree_rcu(publ, rcu); in tipc_update_nametbl()
426 struct publication *publ; in tipc_named_reinit() local
432 list_for_each_entry_rcu(publ, &tn->nametbl->publ_list[scope], in tipc_named_reinit()
434 publ->node = tn->own_addr; in tipc_named_reinit()