OSDN Git Service

tipc: introduce tipc_subscrb_create routine
authorYing Xue <ying.xue@windriver.com>
Mon, 4 May 2015 02:36:45 +0000 (10:36 +0800)
committerDavid S. Miller <davem@davemloft.net>
Mon, 4 May 2015 19:04:01 +0000 (15:04 -0400)
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>
net/tipc/subscr.c

index caec0b2..d0dbde4 100644 (file)
@@ -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)