Lines Matching defs:sub_info

761 	subscriber_priv_t *sub_info;
764 sub_info = (subscriber_priv_t *)SH_PRIV_DATA(shp);
767 if (sub_info->sp_handler_tid == NULL)
768 sub_info->sp_handler_tid = thr_self();
770 (void) mutex_lock(&sub_info->sp_qlock);
772 while (sub_info->sp_evq_head == NULL && SH_BOUND(shp)) {
773 (void) cond_wait(&sub_info->sp_cv, &sub_info->sp_qlock);
775 evqp = sub_info->sp_evq_head;
777 (void) mutex_unlock(&sub_info->sp_qlock);
778 (void) sub_info->sp_func(evqp->sq_ev);
779 (void) mutex_lock(&sub_info->sp_qlock);
780 sub_info->sp_evq_head = sub_info->sp_evq_head->sq_next;
783 evqp = sub_info->sp_evq_head;
786 (void) mutex_unlock(&sub_info->sp_qlock);
816 subscriber_priv_t *sub_info;
852 sub_info = (subscriber_priv_t *)SH_PRIV_DATA(shp);
853 if (sub_info == NULL) {
880 (void) mutex_lock(&sub_info->sp_qlock);
881 if (sub_info->sp_evq_head == NULL) {
882 sub_info->sp_evq_head = new_eq;
884 sub_info->sp_evq_tail->sq_next = new_eq;
886 sub_info->sp_evq_tail = new_eq;
888 (void) cond_signal(&sub_info->sp_cv);
889 (void) mutex_unlock(&sub_info->sp_qlock);
952 update_publisher_cache(subscriber_priv_t *sub_info, int update_op,
970 pub_fd = open(sub_info->sp_door_name, O_RDONLY);
2105 subscriber_priv_t *sub_info;
2122 if ((sub_info = (subscriber_priv_t *)calloc(1,
2131 free(sub_info);
2137 if ((sub_info->sp_door_name = strdup(door_name)) == NULL) {
2138 free(sub_info);
2143 (void) cond_init(&sub_info->sp_cv, USYNC_THREAD, NULL);
2144 (void) mutex_init(&sub_info->sp_qlock, USYNC_THREAD, NULL);
2145 sub_info->sp_func = event_handler;
2208 if (update_publisher_cache(sub_info, SE_BIND_REGISTRATION,
2218 SH_PRIV_DATA(shp) = (void *)sub_info;
2224 shp, THR_BOUND, &sub_info->sp_handler_tid) == 0;
2259 (void) cond_destroy(&sub_info->sp_cv);
2260 (void) mutex_destroy(&sub_info->sp_qlock);
2261 free(sub_info->sp_door_name);
2262 free(sub_info);
2269 (void) update_publisher_cache(sub_info, SE_UNBIND_REGISTRATION,
2478 subscriber_priv_t *sub_info;
2494 sub_info = (subscriber_priv_t *)SH_PRIV_DATA(shp);
2495 (void) update_publisher_cache(sub_info, SE_UNBIND_REGISTRATION,
2506 (void) mutex_lock(&sub_info->sp_qlock);
2509 (void) cond_signal(&sub_info->sp_cv);
2510 (void) mutex_unlock(&sub_info->sp_qlock);
2511 if (sub_info->sp_handler_tid != NULL)
2512 (void) thr_join(sub_info->sp_handler_tid, NULL, NULL);
2514 (void) cond_destroy(&sub_info->sp_cv);
2515 (void) mutex_destroy(&sub_info->sp_qlock);
2516 free(sub_info->sp_door_name);
2517 free(sub_info);