On 03/13/2018 09:24 PM, Jon Maloy wrote:
> We rename some lists and fields in struct publication both to make
> the naming more consistent and to better reflect their roles. We
> also update the descriptions of those lists.
> 
> node_list -> local_publ
> cluster_list -> all_publ
> pport_list -> issuing_sock
> ref -> port
> 
> There are no functional changes in this commit.
> 
> Signed-off-by: Jon Maloy <[email protected]>

Acked-by: Ying Xue <[email protected]>

> ---
>  net/tipc/name_distr.c |  12 ++---
>  net/tipc/name_distr.h |   2 +-
>  net/tipc/name_table.c | 143 
> ++++++++++++++++++++++++--------------------------
>  net/tipc/name_table.h |  38 ++++++++------
>  net/tipc/socket.c     |  14 ++---
>  5 files changed, 106 insertions(+), 103 deletions(-)
> 
> diff --git a/net/tipc/name_distr.c b/net/tipc/name_distr.c
> index c4a7827..88f4fa1 100644
> --- a/net/tipc/name_distr.c
> +++ b/net/tipc/name_distr.c
> @@ -56,7 +56,7 @@ static void publ_to_item(struct distr_item *i, struct 
> publication *p)
>       i->type = htonl(p->type);
>       i->lower = htonl(p->lower);
>       i->upper = htonl(p->upper);
> -     i->ref = htonl(p->ref);
> +     i->port = htonl(p->port);
>       i->key = htonl(p->key);
>  }
>  
> @@ -209,15 +209,15 @@ static void tipc_publ_purge(struct net *net, struct 
> publication *publ, u32 addr)
>  
>       spin_lock_bh(&tn->nametbl_lock);
>       p = tipc_nametbl_remove_publ(net, publ->type, publ->lower,
> -                                  publ->node, publ->ref, publ->key);
> +                                  publ->node, publ->port, publ->key);
>       if (p)
>               tipc_node_unsubscribe(net, &p->issuing_node, addr);
>       spin_unlock_bh(&tn->nametbl_lock);
>  
>       if (p != publ) {
>               pr_err("Unable to remove publication from failed node\n"
> -                    " (type=%u, lower=%u, node=0x%x, ref=%u, key=%u)\n",
> -                    publ->type, publ->lower, publ->node, publ->ref,
> +                    " (type=%u, lower=%u, node=0x%x, port=%u, key=%u)\n",
> +                    publ->type, publ->lower, publ->node, publ->port,
>                      publ->key);
>       }
>  
> @@ -268,7 +268,7 @@ static bool tipc_update_nametbl(struct net *net, struct 
> distr_item *i,
>                                               ntohl(i->lower),
>                                               ntohl(i->upper),
>                                               TIPC_CLUSTER_SCOPE, node,
> -                                             ntohl(i->ref), ntohl(i->key));
> +                                             ntohl(i->port), ntohl(i->key));
>               if (publ) {
>                       tipc_node_subscribe(net, &publ->issuing_node, node);
>                       return true;
> @@ -276,7 +276,7 @@ static bool tipc_update_nametbl(struct net *net, struct 
> distr_item *i,
>       } else if (dtype == WITHDRAWAL) {
>               publ = tipc_nametbl_remove_publ(net, ntohl(i->type),
>                                               ntohl(i->lower),
> -                                             node, ntohl(i->ref),
> +                                             node, ntohl(i->port),
>                                               ntohl(i->key));
>               if (publ) {
>                       tipc_node_unsubscribe(net, &publ->issuing_node, node);
> diff --git a/net/tipc/name_distr.h b/net/tipc/name_distr.h
> index 1264ba0..4753e62 100644
> --- a/net/tipc/name_distr.h
> +++ b/net/tipc/name_distr.h
> @@ -63,7 +63,7 @@ struct distr_item {
>       __be32 type;
>       __be32 lower;
>       __be32 upper;
> -     __be32 ref;
> +     __be32 port;
>       __be32 key;
>  };
>  
> diff --git a/net/tipc/name_table.c b/net/tipc/name_table.c
> index 6d7b4c7..856f7bd 100644
> --- a/net/tipc/name_table.c
> +++ b/net/tipc/name_table.c
> @@ -1,7 +1,7 @@
>  /*
>   * net/tipc/name_table.c: TIPC name table code
>   *
> - * Copyright (c) 2000-2006, 2014-2015, Ericsson AB
> + * Copyright (c) 2000-2006, 2014-2018, Ericsson AB
>   * Copyright (c) 2004-2008, 2010-2014, Wind River Systems
>   * All rights reserved.
>   *
> @@ -51,11 +51,11 @@
>  /**
>   * struct name_info - name sequence publication info
>   * @node_list: list of publications on own node of this <type,lower,upper>
> - * @cluster_list: list of all publications of this <type,lower,upper>
> + * @all_publ: list of all publications of this <type,lower,upper>
>   */
>  struct name_info {
> -     struct list_head node_list;
> -     struct list_head cluster_list;
> +     struct list_head local_publ;
> +     struct list_head all_publ;
>  };
>  
>  /**
> @@ -102,7 +102,7 @@ static int hash(int x)
>   * publ_create - create a publication structure
>   */
>  static struct publication *publ_create(u32 type, u32 lower, u32 upper,
> -                                    u32 scope, u32 node, u32 port_ref,
> +                                    u32 scope, u32 node, u32 port,
>                                      u32 key)
>  {
>       struct publication *publ = kzalloc(sizeof(*publ), GFP_ATOMIC);
> @@ -116,9 +116,9 @@ static struct publication *publ_create(u32 type, u32 
> lower, u32 upper,
>       publ->upper = upper;
>       publ->scope = scope;
>       publ->node = node;
> -     publ->ref = port_ref;
> +     publ->port = port;
>       publ->key = key;
> -     INIT_LIST_HEAD(&publ->pport_list);
> +     INIT_LIST_HEAD(&publ->issuing_sock);
>       return publ;
>  }
>  
> @@ -237,9 +237,9 @@ static struct publication 
> *tipc_nameseq_insert_publ(struct net *net,
>               info = sseq->info;
>  
>               /* Check if an identical publication already exists */
> -             list_for_each_entry(publ, &info->cluster_list, cluster_list) {
> -                     if ((publ->ref == port) && (publ->key == key) &&
> -                         (!publ->node || (publ->node == node)))
> +             list_for_each_entry(publ, &info->all_publ, all_publ) {
> +                     if (publ->port == port && publ->key == key &&
> +                         (!publ->node || publ->node == node))
>                               return NULL;
>               }
>       } else {
> @@ -278,8 +278,8 @@ static struct publication 
> *tipc_nameseq_insert_publ(struct net *net,
>                       return NULL;
>               }
>  
> -             INIT_LIST_HEAD(&info->node_list);
> -             INIT_LIST_HEAD(&info->cluster_list);
> +             INIT_LIST_HEAD(&info->local_publ);
> +             INIT_LIST_HEAD(&info->all_publ);
>  
>               /* Insert new sub-sequence */
>               sseq = &nseq->sseqs[inspos];
> @@ -298,15 +298,15 @@ static struct publication 
> *tipc_nameseq_insert_publ(struct net *net,
>       if (!publ)
>               return NULL;
>  
> -     list_add(&publ->cluster_list, &info->cluster_list);
> +     list_add(&publ->all_publ, &info->all_publ);
>  
>       if (in_own_node(net, node))
> -             list_add(&publ->node_list, &info->node_list);
> +             list_add(&publ->local_publ, &info->local_publ);
>  
>       /* Any subscriptions waiting for notification?  */
>       list_for_each_entry_safe(s, st, &nseq->subscriptions, nameseq_list) {
>               tipc_sub_report_overlap(s, publ->lower, publ->upper,
> -                                     TIPC_PUBLISHED, publ->ref,
> +                                     TIPC_PUBLISHED, publ->port,
>                                       publ->node, publ->scope,
>                                       created_subseq);
>       }
> @@ -327,7 +327,7 @@ static struct publication 
> *tipc_nameseq_insert_publ(struct net *net,
>  static struct publication *tipc_nameseq_remove_publ(struct net *net,
>                                                   struct name_seq *nseq,
>                                                   u32 inst, u32 node,
> -                                                 u32 ref, u32 key)
> +                                                 u32 port, u32 key)
>  {
>       struct publication *publ;
>       struct sub_seq *sseq = nameseq_find_subseq(nseq, inst);
> @@ -342,20 +342,20 @@ static struct publication 
> *tipc_nameseq_remove_publ(struct net *net,
>       info = sseq->info;
>  
>       /* Locate publication, if it exists */
> -     list_for_each_entry(publ, &info->cluster_list, cluster_list) {
> -             if ((publ->key == key) && (publ->ref == ref) &&
> -                 (!publ->node || (publ->node == node)))
> +     list_for_each_entry(publ, &info->all_publ, all_publ) {
> +             if (publ->key == key && publ->port == port &&
> +                 (!publ->node || publ->node == node))
>                       goto found;
>       }
>       return NULL;
>  
>  found:
> -     list_del(&publ->cluster_list);
> +     list_del(&publ->all_publ);
>       if (in_own_node(net, node))
> -             list_del(&publ->node_list);
> +             list_del(&publ->local_publ);
>  
>       /* Contract subseq list if no more publications for that subseq */
> -     if (list_empty(&info->cluster_list)) {
> +     if (list_empty(&info->all_publ)) {
>               kfree(info);
>               free = &nseq->sseqs[nseq->first_free--];
>               memmove(sseq, sseq + 1, (free - (sseq + 1)) * sizeof(*sseq));
> @@ -365,8 +365,9 @@ static struct publication 
> *tipc_nameseq_remove_publ(struct net *net,
>       /* Notify any waiting subscriptions */
>       list_for_each_entry_safe(s, st, &nseq->subscriptions, nameseq_list) {
>               tipc_sub_report_overlap(s, publ->lower, publ->upper,
> -                                     TIPC_WITHDRAWN, publ->ref, publ->node,
> -                                     publ->scope, removed_subseq);
> +                                     TIPC_WITHDRAWN, publ->port,
> +                                     publ->node, publ->scope,
> +                                     removed_subseq);
>       }
>  
>       return publ;
> @@ -402,12 +403,12 @@ static void tipc_nameseq_subscribe(struct name_seq 
> *nseq,
>                       struct name_info *info = sseq->info;
>                       int must_report = 1;
>  
> -                     list_for_each_entry(crs, &info->cluster_list,
> -                                         cluster_list) {
> +                     list_for_each_entry(crs, &info->all_publ, all_publ) {
>                               tipc_sub_report_overlap(sub, sseq->lower,
>                                                       sseq->upper,
>                                                       TIPC_PUBLISHED,
> -                                                     crs->ref, crs->node,
> +                                                     crs->port,
> +                                                     crs->node,
>                                                       crs->scope,
>                                                       must_report);
>                               must_report = 0;
> @@ -460,7 +461,7 @@ struct publication *tipc_nametbl_insert_publ(struct net 
> *net, u32 type,
>  }
>  
>  struct publication *tipc_nametbl_remove_publ(struct net *net, u32 type,
> -                                          u32 lower, u32 node, u32 ref,
> +                                          u32 lower, u32 node, u32 port,
>                                            u32 key)
>  {
>       struct publication *publ;
> @@ -470,7 +471,7 @@ struct publication *tipc_nametbl_remove_publ(struct net 
> *net, u32 type,
>               return NULL;
>  
>       spin_lock_bh(&seq->lock);
> -     publ = tipc_nameseq_remove_publ(net, seq, lower, node, ref, key);
> +     publ = tipc_nameseq_remove_publ(net, seq, lower, node, port, key);
>       if (!seq->first_free && list_empty(&seq->subscriptions)) {
>               hlist_del_init_rcu(&seq->ns_list);
>               kfree(seq->sseqs);
> @@ -503,7 +504,7 @@ u32 tipc_nametbl_translate(struct net *net, u32 type, u32 
> instance,
>       struct name_info *info;
>       struct publication *publ;
>       struct name_seq *seq;
> -     u32 ref = 0;
> +     u32 port = 0;
>       u32 node = 0;
>  
>       if (!tipc_in_scope(*destnode, tn->own_addr))
> @@ -521,42 +522,42 @@ u32 tipc_nametbl_translate(struct net *net, u32 type, 
> u32 instance,
>  
>       /* Closest-First Algorithm */
>       if (likely(!*destnode)) {
> -             if (!list_empty(&info->node_list)) {
> -                     publ = list_first_entry(&info->node_list,
> +             if (!list_empty(&info->local_publ)) {
> +                     publ = list_first_entry(&info->local_publ,
>                                               struct publication,
> -                                             node_list);
> -                     list_move_tail(&publ->node_list,
> -                                    &info->node_list);
> +                                             local_publ);
> +                     list_move_tail(&publ->local_publ,
> +                                    &info->local_publ);
>               } else {
> -                     publ = list_first_entry(&info->cluster_list,
> +                     publ = list_first_entry(&info->all_publ,
>                                               struct publication,
> -                                             cluster_list);
> -                     list_move_tail(&publ->cluster_list,
> -                                    &info->cluster_list);
> +                                             all_publ);
> +                     list_move_tail(&publ->all_publ,
> +                                    &info->all_publ);
>               }
>       }
>  
>       /* Round-Robin Algorithm */
>       else if (*destnode == tn->own_addr) {
> -             if (list_empty(&info->node_list))
> +             if (list_empty(&info->local_publ))
>                       goto no_match;
> -             publ = list_first_entry(&info->node_list, struct publication,
> -                                     node_list);
> -             list_move_tail(&publ->node_list, &info->node_list);
> +             publ = list_first_entry(&info->local_publ, struct publication,
> +                                     local_publ);
> +             list_move_tail(&publ->local_publ, &info->local_publ);
>       } else {
> -             publ = list_first_entry(&info->cluster_list, struct publication,
> -                                     cluster_list);
> -             list_move_tail(&publ->cluster_list, &info->cluster_list);
> +             publ = list_first_entry(&info->all_publ, struct publication,
> +                                     all_publ);
> +             list_move_tail(&publ->all_publ, &info->all_publ);
>       }
>  
> -     ref = publ->ref;
> +     port = publ->port;
>       node = publ->node;
>  no_match:
>       spin_unlock_bh(&seq->lock);
>  not_found:
>       rcu_read_unlock();
>       *destnode = node;
> -     return ref;
> +     return port;
>  }
>  
>  bool tipc_nametbl_lookup(struct net *net, u32 type, u32 instance, u32 scope,
> @@ -578,17 +579,16 @@ bool tipc_nametbl_lookup(struct net *net, u32 type, u32 
> instance, u32 scope,
>       sseq = nameseq_find_subseq(seq, instance);
>       if (likely(sseq)) {
>               info = sseq->info;
> -             list_for_each_entry(publ, &info->cluster_list, cluster_list) {
> +             list_for_each_entry(publ, &info->all_publ, all_publ) {
>                       if (publ->scope != scope)
>                               continue;
> -                     if (publ->ref == exclude && publ->node == self)
> +                     if (publ->port == exclude && publ->node == self)
>                               continue;
> -                     tipc_dest_push(dsts, publ->node, publ->ref);
> +                     tipc_dest_push(dsts, publ->node, publ->port);
>                       (*dstcnt)++;
>                       if (all)
>                               continue;
> -                     list_move_tail(&publ->cluster_list,
> -                                    &info->cluster_list);
> +                     list_move_tail(&publ->all_publ, &info->all_publ);
>                       break;
>               }
>       }
> @@ -619,9 +619,9 @@ void tipc_nametbl_mc_lookup(struct net *net, u32 type, 
> u32 lower, u32 upper,
>               if (sseq->lower > upper)
>                       break;
>               info = sseq->info;
> -             list_for_each_entry(p, &info->node_list, node_list) {
> +             list_for_each_entry(p, &info->local_publ, local_publ) {
>                       if (p->scope == scope || (!exact && p->scope < scope))
> -                             tipc_dest_push(dports, 0, p->ref);
> +                             tipc_dest_push(dports, 0, p->port);
>               }
>       }
>       spin_unlock_bh(&seq->lock);
> @@ -651,7 +651,7 @@ void tipc_nametbl_lookup_dst_nodes(struct net *net, u32 
> type, u32 lower,
>       stop = seq->sseqs + seq->first_free;
>       for (; sseq != stop && sseq->lower <= upper; sseq++) {
>               info = sseq->info;
> -             list_for_each_entry(publ, &info->cluster_list, cluster_list) {
> +             list_for_each_entry(publ, &info->all_publ, all_publ) {
>                       tipc_nlist_add(nodes, publ->node);
>               }
>       }
> @@ -680,10 +680,10 @@ void tipc_nametbl_build_group(struct net *net, struct 
> tipc_group *grp,
>       stop = seq->sseqs + seq->first_free;
>       for (; sseq != stop; sseq++) {
>               info = sseq->info;
> -             list_for_each_entry(p, &info->cluster_list, cluster_list) {
> +             list_for_each_entry(p, &info->all_publ, all_publ) {
>                       if (p->scope != scope)
>                               continue;
> -                     tipc_group_add_member(grp, p->node, p->ref, p->lower);
> +                     tipc_group_add_member(grp, p->node, p->port, p->lower);
>               }
>       }
>       spin_unlock_bh(&seq->lock);
> @@ -728,7 +728,7 @@ struct publication *tipc_nametbl_publish(struct net *net, 
> u32 type, u32 lower,
>  /**
>   * tipc_nametbl_withdraw - withdraw name publication from network name tables
>   */
> -int tipc_nametbl_withdraw(struct net *net, u32 type, u32 lower, u32 ref,
> +int tipc_nametbl_withdraw(struct net *net, u32 type, u32 lower, u32 port,
>                         u32 key)
>  {
>       struct publication *publ;
> @@ -737,18 +737,18 @@ int tipc_nametbl_withdraw(struct net *net, u32 type, 
> u32 lower, u32 ref,
>  
>       spin_lock_bh(&tn->nametbl_lock);
>       publ = tipc_nametbl_remove_publ(net, type, lower, tn->own_addr,
> -                                     ref, key);
> +                                     port, key);
>       if (likely(publ)) {
>               tn->nametbl->local_publ_count--;
>               skb = tipc_named_withdraw(net, publ);
>               /* Any pending external events? */
>               tipc_named_process_backlog(net);
> -             list_del_init(&publ->pport_list);
> +             list_del_init(&publ->issuing_sock);
>               kfree_rcu(publ, rcu);
>       } else {
>               pr_err("Unable to remove local publication\n"
> -                    "(type=%u, lower=%u, ref=%u, key=%u)\n",
> -                    type, lower, ref, key);
> +                    "(type=%u, lower=%u, port=%u, key=%u)\n",
> +                    type, lower, port, key);
>       }
>       spin_unlock_bh(&tn->nametbl_lock);
>  
> @@ -851,10 +851,9 @@ static void tipc_purge_publications(struct net *net, 
> struct name_seq *seq)
>       spin_lock_bh(&seq->lock);
>       sseq = seq->sseqs;
>       info = sseq->info;
> -     list_for_each_entry_safe(publ, safe, &info->cluster_list,
> -                              cluster_list) {
> +     list_for_each_entry_safe(publ, safe, &info->all_publ, all_publ) {
>               tipc_nameseq_remove_publ(net, seq, publ->lower, publ->node,
> -                                      publ->ref, publ->key);
> +                                      publ->port, publ->key);
>               kfree_rcu(publ, rcu);
>       }
>       hlist_del_init_rcu(&seq->ns_list);
> @@ -901,19 +900,17 @@ static int __tipc_nl_add_nametable_publ(struct 
> tipc_nl_msg *msg,
>       struct publication *p;
>  
>       if (*last_publ) {
> -             list_for_each_entry(p, &sseq->info->cluster_list,
> -                                 cluster_list)
> +             list_for_each_entry(p, &sseq->info->all_publ, all_publ)
>                       if (p->key == *last_publ)
>                               break;
>               if (p->key != *last_publ)
>                       return -EPIPE;
>       } else {
> -             p = list_first_entry(&sseq->info->cluster_list,
> -                                  struct publication,
> -                                  cluster_list);
> +             p = list_first_entry(&sseq->info->all_publ, struct publication,
> +                                  all_publ);
>       }
>  
> -     list_for_each_entry_from(p, &sseq->info->cluster_list, cluster_list) {
> +     list_for_each_entry_from(p, &sseq->info->all_publ, all_publ) {
>               *last_publ = p->key;
>  
>               hdr = genlmsg_put(msg->skb, msg->portid, msg->seq,
> @@ -940,7 +937,7 @@ static int __tipc_nl_add_nametable_publ(struct 
> tipc_nl_msg *msg,
>                       goto publ_msg_full;
>               if (nla_put_u32(msg->skb, TIPC_NLA_PUBL_NODE, p->node))
>                       goto publ_msg_full;
> -             if (nla_put_u32(msg->skb, TIPC_NLA_PUBL_REF, p->ref))
> +             if (nla_put_u32(msg->skb, TIPC_NLA_PUBL_REF, p->port))
>                       goto publ_msg_full;
>               if (nla_put_u32(msg->skb, TIPC_NLA_PUBL_KEY, p->key))
>                       goto publ_msg_full;
> diff --git a/net/tipc/name_table.h b/net/tipc/name_table.h
> index c32602d..4774bf1 100644
> --- a/net/tipc/name_table.h
> +++ b/net/tipc/name_table.h
> @@ -54,19 +54,22 @@ struct tipc_group;
>   * @type: name sequence type
>   * @lower: name sequence lower bound
>   * @upper: name sequence upper bound
> - * @scope: scope of publication
> - * @node: network address of publishing port's node
> - * @ref: publishing port
> - * @key: publication key
> - * @nodesub_list: subscription to "node down" event (off-node publication 
> only)
> - * @local_list: adjacent entries in list of publications made by this node
> - * @pport_list: adjacent entries in list of publications made by this port
> - * @node_list: adjacent matching name seq publications with >= node scope
> - * @cluster_list: adjacent matching name seq publications with >= cluster 
> scope
> - * @zone_list: adjacent matching name seq publications with >= zone scope
> + * @scope: scope of publication, TIPC_NODE_SCOPE or TIPC_CLUSTER_SCOPE
> + * @node: network address of publishing socket's node
> + * @port: publishing port
> + * @key: publication key, unique across the cluster
> + * @issuing_node: all publications from the same node which issued this one
> + * - Remote publications: in node->publ_list
> + *   Used by node/name distr to withdraw publications when node is lost
> + * - Local/node scope publications: in name_table->node_scope list
> + * - Local/cluster scope publications: in name_table->cluster_scope list
> + * @issuing_sock: all publications from the socket socket which issued this 
> one
> + *   Used by socket to withdraw publications when socket is unbound/released
> + * @local_publ: list of identical publications made from this node
> + *   Used by closest_first lookup algorithm
> + * @all_publ: all publications identical to this one, whatever node and scope
> + *   Used by round-robin lookup algorithm
>   * @rcu: RCU callback head used for deferred freeing
> - *
> - * Note that the node list, cluster list, and zone list are circular lists.
>   */
>  struct publication {
>       u32 type;
> @@ -74,12 +77,12 @@ struct publication {
>       u32 upper;
>       u32 scope;
>       u32 node;
> -     u32 ref;
> +     u32 port;
>       u32 key;
>       struct list_head issuing_node;
> -     struct list_head pport_list;
> -     struct list_head node_list;
> -     struct list_head cluster_list;
> +     struct list_head issuing_sock;
> +     struct list_head local_publ;
> +     struct list_head all_publ;
>       struct rcu_head rcu;
>  };
>  
> @@ -87,7 +90,10 @@ struct publication {
>   * struct name_table - table containing all existing port name publications
>   * @seq_hlist: name sequence hash lists
>   * @node_scope: all local publications with node scope
> + *               - used by name_distr during re-init of name table
>   * @cluster_scope: all local publications with cluster scope
> + *               - used by name_distr to send bulk updates to new nodes
> + *               - used by name_distr during re-init of name table
>   * @local_publ_count: number of publications issued by this node
>   */
>  struct name_table {
> diff --git a/net/tipc/socket.c b/net/tipc/socket.c
> index 910d382..f3c2174 100644
> --- a/net/tipc/socket.c
> +++ b/net/tipc/socket.c
> @@ -2605,7 +2605,7 @@ static int tipc_sk_publish(struct tipc_sock *tsk, uint 
> scope,
>       if (unlikely(!publ))
>               return -EINVAL;
>  
> -     list_add(&publ->pport_list, &tsk->publications);
> +     list_add(&publ->issuing_sock, &tsk->publications);
>       tsk->pub_count++;
>       tsk->published = 1;
>       return 0;
> @@ -2622,7 +2622,7 @@ static int tipc_sk_withdraw(struct tipc_sock *tsk, uint 
> scope,
>       if (scope != TIPC_NODE_SCOPE)
>               scope = TIPC_CLUSTER_SCOPE;
>  
> -     list_for_each_entry_safe(publ, safe, &tsk->publications, pport_list) {
> +     list_for_each_entry_safe(publ, safe, &tsk->publications, issuing_sock) {
>               if (seq) {
>                       if (publ->scope != scope)
>                               continue;
> @@ -2633,12 +2633,12 @@ static int tipc_sk_withdraw(struct tipc_sock *tsk, 
> uint scope,
>                       if (publ->upper != seq->upper)
>                               break;
>                       tipc_nametbl_withdraw(net, publ->type, publ->lower,
> -                                           publ->ref, publ->key);
> +                                           publ->port, publ->key);
>                       rc = 0;
>                       break;
>               }
>               tipc_nametbl_withdraw(net, publ->type, publ->lower,
> -                                   publ->ref, publ->key);
> +                                   publ->port, publ->key);
>               rc = 0;
>       }
>       if (list_empty(&tsk->publications))
> @@ -3292,7 +3292,7 @@ static int __tipc_nl_list_sk_publ(struct sk_buff *skb,
>       struct publication *p;
>  
>       if (*last_publ) {
> -             list_for_each_entry(p, &tsk->publications, pport_list) {
> +             list_for_each_entry(p, &tsk->publications, issuing_sock) {
>                       if (p->key == *last_publ)
>                               break;
>               }
> @@ -3309,10 +3309,10 @@ static int __tipc_nl_list_sk_publ(struct sk_buff *skb,
>               }
>       } else {
>               p = list_first_entry(&tsk->publications, struct publication,
> -                                  pport_list);
> +                                  issuing_sock);
>       }
>  
> -     list_for_each_entry_from(p, &tsk->publications, pport_list) {
> +     list_for_each_entry_from(p, &tsk->publications, issuing_sock) {
>               err = __tipc_nl_add_sk_publ(skb, cb, p);
>               if (err) {
>                       *last_publ = p->key;
> 

------------------------------------------------------------------------------
Check out the vibrant tech community on one of the world's most
engaging tech sites, Slashdot.org! http://sdm.link/slashdot
_______________________________________________
tipc-discussion mailing list
[email protected]
https://lists.sourceforge.net/lists/listinfo/tipc-discussion

Reply via email to