tipc: fix sparse warnings
authorErik Hugne <erik.hugne@ericsson.com>
Wed, 10 Sep 2014 12:02:50 +0000 (14:02 +0200)
committerDavid S. Miller <davem@davemloft.net>
Wed, 10 Sep 2014 21:00:58 +0000 (14:00 -0700)
This fixes the following sparse warnings:
sparse: symbol 'tipc_update_nametbl' was not declared. Should it be static?
Also, the function is changed to return bool upon success, rather than a
potentially freed pointer.

Signed-off-by: Erik Hugne <erik.hugne@ericsson.com>
Reported-by: Dan Carpenter <dan.carpenter@oracle.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
net/tipc/name_distr.c

index 780ef71..376d2bb 100644 (file)
@@ -284,8 +284,7 @@ static void named_purge_publ(struct publication *publ)
  * tipc_nametbl_lock must be held.
  * Returns the publication item if successful, otherwise NULL.
  */
-struct publication *tipc_update_nametbl(struct distr_item *i, u32 node,
-                                       u32 dtype)
+static bool tipc_update_nametbl(struct distr_item *i, u32 node, u32 dtype)
 {
        struct publication *publ = NULL;
 
@@ -298,6 +297,7 @@ struct publication *tipc_update_nametbl(struct distr_item *i, u32 node,
                        tipc_nodesub_subscribe(&publ->subscr, node, publ,
                                               (net_ev_handler)
                                               named_purge_publ);
+                       return true;
                }
        } else if (dtype == WITHDRAWAL) {
                publ = tipc_nametbl_remove_publ(ntohl(i->type), ntohl(i->lower),
@@ -306,11 +306,12 @@ struct publication *tipc_update_nametbl(struct distr_item *i, u32 node,
                if (publ) {
                        tipc_nodesub_unsubscribe(&publ->subscr);
                        kfree(publ);
+                       return true;
                }
        } else {
                pr_warn("Unrecognized name table message received\n");
        }
-       return publ;
+       return false;
 }
 
 /**