Lines Matching refs:subscriber

56 static void tipc_subscrb_put(struct tipc_subscriber *subscriber);
75 struct tipc_subscriber *subscriber = sub->subscriber; in tipc_subscrp_send_event() local
85 tipc_conn_sendmsg(tn->topsrv, subscriber->conid, NULL, in tipc_subscrp_send_event()
123 struct tipc_subscriber *subscriber = sub->subscriber; in tipc_subscrp_timeout() local
129 spin_lock_bh(&subscriber->lock); in tipc_subscrp_timeout()
131 spin_unlock_bh(&subscriber->lock); in tipc_subscrp_timeout()
133 tipc_subscrb_put(subscriber); in tipc_subscrp_timeout()
144 static void tipc_subscrb_put(struct tipc_subscriber *subscriber) in tipc_subscrb_put() argument
146 kref_put(&subscriber->kref, tipc_subscrb_kref_release); in tipc_subscrb_put()
149 static void tipc_subscrb_get(struct tipc_subscriber *subscriber) in tipc_subscrb_get() argument
151 kref_get(&subscriber->kref); in tipc_subscrb_get()
156 struct tipc_subscriber *subscriber; in tipc_subscrb_create() local
158 subscriber = kzalloc(sizeof(*subscriber), GFP_ATOMIC); in tipc_subscrb_create()
159 if (!subscriber) { in tipc_subscrb_create()
163 kref_init(&subscriber->kref); in tipc_subscrb_create()
164 INIT_LIST_HEAD(&subscriber->subscrp_list); in tipc_subscrb_create()
165 subscriber->conid = conid; in tipc_subscrb_create()
166 spin_lock_init(&subscriber->lock); in tipc_subscrb_create()
168 return subscriber; in tipc_subscrb_create()
171 static void tipc_subscrb_delete(struct tipc_subscriber *subscriber) in tipc_subscrb_delete() argument
175 spin_lock_bh(&subscriber->lock); in tipc_subscrb_delete()
177 list_for_each_entry_safe(sub, temp, &subscriber->subscrp_list, in tipc_subscrb_delete()
181 tipc_subscrb_put(subscriber); in tipc_subscrb_delete()
184 spin_unlock_bh(&subscriber->lock); in tipc_subscrb_delete()
186 tipc_subscrb_put(subscriber); in tipc_subscrb_delete()
200 struct tipc_subscriber *subscriber) in tipc_subscrp_cancel() argument
204 spin_lock_bh(&subscriber->lock); in tipc_subscrp_cancel()
206 list_for_each_entry_safe(sub, temp, &subscriber->subscrp_list, in tipc_subscrp_cancel()
211 tipc_subscrb_put(subscriber); in tipc_subscrp_cancel()
216 spin_unlock_bh(&subscriber->lock); in tipc_subscrp_cancel()
220 struct tipc_subscriber *subscriber, in tipc_subscrp_create() argument
233 tipc_subscrp_cancel(s, subscriber); in tipc_subscrp_create()
265 spin_lock_bh(&subscriber->lock); in tipc_subscrp_create()
266 list_add(&sub->subscrp_list, &subscriber->subscrp_list); in tipc_subscrp_create()
267 spin_unlock_bh(&subscriber->lock); in tipc_subscrp_create()
268 sub->subscriber = subscriber; in tipc_subscrp_create()
276 tipc_subscrb_get(subscriber); in tipc_subscrp_create()