diff options
author | Ying Xue <ying.xue@windriver.com> | 2015-05-04 05:36:45 +0300 |
---|---|---|
committer | David S. Miller <davem@davemloft.net> | 2015-05-04 22:04:01 +0300 |
commit | 1b764828add9feaa18a8f916a79b954ac8a20a73 (patch) | |
tree | f4f6277318d8b6218eb96f723cfc9b35fdb74792 | |
parent | 57f1d1868fb5d71a20bfb1bc807274471c2ff459 (diff) | |
download | linux-1b764828add9feaa18a8f916a79b954ac8a20a73.tar.xz |
tipc: introduce tipc_subscrb_create routine
Introducing a new function makes the purpose of tipc_subscrb_connect_cb
callback routine more clear.
Signed-off-by: Ying Xue <ying.xue@windriver.com>
Reviewed-by: Jon Maloy <jon.maloy@ericson.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
-rw-r--r-- | net/tipc/subscr.c | 30 |
1 files changed, 17 insertions, 13 deletions
diff --git a/net/tipc/subscr.c b/net/tipc/subscr.c index caec0b2b0740..d0dbde420540 100644 --- a/net/tipc/subscr.c +++ b/net/tipc/subscr.c @@ -154,6 +154,22 @@ static void tipc_subscrp_delete(struct tipc_subscription *sub) atomic_dec(&tn->subscription_count); } +static struct tipc_subscriber *tipc_subscrb_create(int conid) +{ + struct tipc_subscriber *subscriber; + + subscriber = kzalloc(sizeof(*subscriber), GFP_ATOMIC); + if (!subscriber) { + pr_warn("Subscriber rejected, no memory\n"); + return NULL; + } + INIT_LIST_HEAD(&subscriber->subscrp_list); + subscriber->conid = conid; + spin_lock_init(&subscriber->lock); + + return subscriber; +} + static void tipc_subscrb_delete(struct tipc_subscriber *subscriber) { struct tipc_subscription *sub; @@ -301,19 +317,7 @@ static void tipc_subscrb_rcv_cb(struct net *net, int conid, /* Handle one request to establish a new subscriber */ static void *tipc_subscrb_connect_cb(int conid) { - struct tipc_subscriber *subscriber; - - /* Create subscriber object */ - subscriber = kzalloc(sizeof(struct tipc_subscriber), GFP_ATOMIC); - if (subscriber == NULL) { - pr_warn("Subscriber rejected, no memory\n"); - return NULL; - } - INIT_LIST_HEAD(&subscriber->subscrp_list); - subscriber->conid = conid; - spin_lock_init(&subscriber->lock); - - return (void *)subscriber; + return (void *)tipc_subscrb_create(conid); } int tipc_topsrv_start(struct net *net) |