41 #define ITEM_SIZE sizeof(struct distr_item)
130 static void named_cluster_distribute(
struct sk_buff *buf)
140 msg_set_destnode(buf_msg(buf_copy), n_ptr->
addr);
164 pr_warn(
"Publication distribution failure\n");
168 item = (
struct distr_item *)msg_data(buf_msg(buf));
169 publ_to_item(item, publ);
170 named_cluster_distribute(buf);
189 pr_warn(
"Withdrawal distribution failure\n");
193 item = (
struct distr_item *)msg_data(buf_msg(buf));
194 publ_to_item(item, publ);
195 named_cluster_distribute(buf);
212 left = (rest <= max_item_buf) ? rest : max_item_buf;
216 pr_warn(
"Bulk publication failure\n");
219 item = (
struct distr_item *)msg_data(buf_msg(buf));
221 publ_to_item(item, publ);
240 u32 max_item_buf = 0;
246 tipc_node_lock(n_ptr);
251 tipc_node_unlock(n_ptr);
258 INIT_LIST_HEAD(&message_list);
261 named_distribute(&message_list, node, &publ_cluster, max_item_buf);
262 named_distribute(&message_list, node, &publ_zone, max_item_buf);
274 static void named_purge_publ(
struct publication *publ)
286 pr_err(
"Unable to remove publication from failed node\n"
287 " (type=%u, lower=%u, node=0x%x, ref=%u, key=%u)\n",
301 struct tipc_msg *msg = buf_msg(buf);
333 pr_err(
"Unable to remove publication by node 0x%x\n"
334 " (type=%u, lower=%u, ref=%u, key=%u)\n",
340 pr_warn(
"Unrecognized name table message received\n");
364 publ->
node = tipc_own_addr;