Lines Matching refs:sharedp

4431 	rsm_import_share_t	*sharedp;  in rsmsegshare_suspend()  local
4441 sharedp = seg->s_share; in rsmsegshare_suspend()
4443 switch (sharedp->rsmsi_state) { in rsmsegshare_suspend()
4447 sharedp->rsmsi_state = RSMSI_STATE_ABORT_CONNECT; in rsmsegshare_suspend()
4453 if (sharedp->rsmsi_node != my_nodeid) { in rsmsegshare_suspend()
4455 rsm_disconnect(sharedp->rsmsi_handle); in rsmsegshare_suspend()
4459 sharedp->rsmsi_segid, e)); in rsmsegshare_suspend()
4462 sharedp->rsmsi_handle = NULL; in rsmsegshare_suspend()
4464 sharedp->rsmsi_state = RSMSI_STATE_CONN_QUIESCE; in rsmsegshare_suspend()
4470 if (sharedp->rsmsi_node != my_nodeid) { in rsmsegshare_suspend()
4477 rsm_disconnect(sharedp->rsmsi_handle); in rsmsegshare_suspend()
4480 sharedp->rsmsi_segid, e)); in rsmsegshare_suspend()
4483 sharedp->rsmsi_handle = NULL; in rsmsegshare_suspend()
4485 sharedp->rsmsi_state = RSMSI_STATE_MAP_QUIESCE; in rsmsegshare_suspend()
4569 rsm_import_share_t *sharedp; in rsmseg_resume() local
4585 sharedp = seg->s_share; in rsmseg_resume()
4594 if ((sharedp->rsmsi_state == RSMSI_STATE_CONNECTED) || in rsmseg_resume()
4595 (sharedp->rsmsi_state == RSMSI_STATE_MAPPED)) { in rsmseg_resume()
4597 seg->s_handle.in = sharedp->rsmsi_handle; in rsmseg_resume()
4605 sharedp->rsmsi_refcnt--; in rsmseg_resume()
4606 cookie = (void *)sharedp->rsmsi_cookie; in rsmseg_resume()
4608 if (sharedp->rsmsi_refcnt == 0) { in rsmseg_resume()
4609 ASSERT(sharedp->rsmsi_mapcnt == 0); in rsmseg_resume()
4613 mutex_destroy(&sharedp->rsmsi_lock); in rsmseg_resume()
4614 cv_destroy(&sharedp->rsmsi_cv); in rsmseg_resume()
4615 kmem_free((void *)(sharedp), in rsmseg_resume()
4647 if (sharedp->rsmsi_state != RSMSI_STATE_MAPPED) { in rsmseg_resume()
4665 sharedp->rsmsi_refcnt--; in rsmseg_resume()
4667 sharedp->rsmsi_mapcnt--; in rsmseg_resume()
4670 if (sharedp->rsmsi_refcnt == 0) { in rsmseg_resume()
4671 ASSERT(sharedp->rsmsi_mapcnt == 0); in rsmseg_resume()
4675 mutex_destroy(&sharedp->rsmsi_lock); in rsmseg_resume()
4676 cv_destroy(&sharedp->rsmsi_cv); in rsmseg_resume()
4677 kmem_free((void *)(sharedp), in rsmseg_resume()
4699 seg->s_handle.in = sharedp->rsmsi_handle; in rsmseg_resume()
4715 seg->s_mapinfo = sharedp->rsmsi_mapinfo; in rsmseg_resume()
4744 rsm_import_share_t *sharedp; in rsmsegshare_resume() local
4753 sharedp = seg->s_share; in rsmsegshare_resume()
4760 if ((sharedp->rsmsi_state != RSMSI_STATE_CONN_QUIESCE) && in rsmsegshare_resume()
4761 (sharedp->rsmsi_state != RSMSI_STATE_MAP_QUIESCE)) { in rsmsegshare_resume()
4767 if (sharedp->rsmsi_node != my_nodeid) { in rsmsegshare_resume()
4769 hwaddr = get_remote_hwaddr(adapter, sharedp->rsmsi_node); in rsmsegshare_resume()
4773 sharedp->rsmsi_segid, &sharedp->rsmsi_handle); in rsmsegshare_resume()
4777 sharedp->rsmsi_segid, e)); in rsmsegshare_resume()
4781 sharedp->rsmsi_handle = NULL; in rsmsegshare_resume()
4782 sharedp->rsmsi_state = RSMSI_STATE_DISCONNECTED; in rsmsegshare_resume()
4784 cv_broadcast(&sharedp->rsmsi_cv); in rsmsegshare_resume()
4789 if (sharedp->rsmsi_state == RSMSI_STATE_CONN_QUIESCE) { in rsmsegshare_resume()
4790 sharedp->rsmsi_state = RSMSI_STATE_CONNECTED; in rsmsegshare_resume()
4792 cv_broadcast(&sharedp->rsmsi_cv); in rsmsegshare_resume()
4796 ASSERT(sharedp->rsmsi_state == RSMSI_STATE_MAP_QUIESCE); in rsmsegshare_resume()
4799 if (sharedp->rsmsi_node != my_nodeid) { in rsmsegshare_resume()
4809 p = sharedp->rsmsi_mapinfo; in rsmsegshare_resume()
4815 sharedp->rsmsi_handle, p->start_offset, in rsmsegshare_resume()
4843 if (p != sharedp->rsmsi_mapinfo) { in rsmsegshare_resume()
4848 rsm_unmap(sharedp->rsmsi_handle); in rsmsegshare_resume()
4851 rsm_free_mapinfo(sharedp->rsmsi_mapinfo); in rsmsegshare_resume()
4852 sharedp->rsmsi_mapinfo = NULL; in rsmsegshare_resume()
4855 rsm_disconnect(sharedp->rsmsi_handle); in rsmsegshare_resume()
4859 sharedp->rsmsi_segid, err)); in rsmsegshare_resume()
4861 sharedp->rsmsi_handle = NULL; in rsmsegshare_resume()
4862 sharedp->rsmsi_state = RSMSI_STATE_DISCONNECTED; in rsmsegshare_resume()
4865 cv_broadcast(&sharedp->rsmsi_cv); in rsmsegshare_resume()
4872 sharedp->rsmsi_state = RSMSI_STATE_MAPPED; in rsmsegshare_resume()
4875 cv_broadcast(&sharedp->rsmsi_cv); in rsmsegshare_resume()
6097 rsm_import_share_t *sharedp; in rsm_connect() local
6163 sharedp = rsmshare_get(msg->key, msg->nodeid, adapter, seg); in rsm_connect()
6171 "rsm_connect:RSMSI_STATE=%d\n", sharedp->rsmsi_state)); in rsm_connect()
6172 switch (sharedp->rsmsi_state) { in rsm_connect()
6174 sharedp->rsmsi_state = RSMSI_STATE_CONNECTING; in rsm_connect()
6182 while ((sharedp->rsmsi_state == in rsm_connect()
6184 (sharedp->rsmsi_state == in rsm_connect()
6186 (sharedp->rsmsi_state == in rsm_connect()
6188 if (cv_wait_sig(&sharedp->rsmsi_cv, in rsm_connect()
6189 &sharedp->rsmsi_lock) == 0) { in rsm_connect()
6217 sharedp->rsmsi_state = RSMSI_STATE_CONNECTING; in rsm_connect()
6224 if (sharedp->rsmsi_state == RSMSI_STATE_CONNECTING) { in rsm_connect()
6260 request.rsmipc_segment_cookie = sharedp; in rsm_connect()
6294 sharedp->rsmsi_mode = reply.rsmipc_mode; in rsm_connect()
6295 sharedp->rsmsi_uid = reply.rsmipc_uid; in rsm_connect()
6296 sharedp->rsmsi_gid = reply.rsmipc_gid; in rsm_connect()
6297 sharedp->rsmsi_seglen = reply.rsmipc_seglen; in rsm_connect()
6298 sharedp->rsmsi_cookie = sharedp; in rsm_connect()
6315 shared_cookie = sharedp->rsmsi_cookie; in rsm_connect()
6318 (sharedp->rsmsi_state == RSMSI_STATE_ABORT_CONNECT)) { in rsm_connect()
6327 if (!(sharedp->rsmsi_flags & RSMSI_FLAGS_ABORTDONE)) { in rsm_connect()
6332 sharedp->rsmsi_flags |= RSMSI_FLAGS_ABORTDONE; in rsm_connect()
6342 cv_broadcast(&sharedp->rsmsi_cv); in rsm_connect()
6355 e = rsm_access(sharedp->rsmsi_uid, sharedp->rsmsi_gid, in rsm_connect()
6356 access & sharedp->rsmsi_mode, in rsm_connect()
6370 if (sharedp->rsmsi_state == RSMSI_STATE_CONNECTING) { in rsm_connect()
6377 sharedp->rsmsi_state = RSMSI_STATE_NEW; in rsm_connect()
6378 cv_broadcast(&sharedp->rsmsi_cv); in rsm_connect()
6388 seg->s_segid = sharedp->rsmsi_segid; in rsm_connect()
6389 seg->s_len = sharedp->rsmsi_seglen; in rsm_connect()
6390 seg->s_mode = access & sharedp->rsmsi_mode; in rsm_connect()
6395 if (sharedp->rsmsi_state == RSMSI_STATE_CONNECTING) { in rsm_connect()
6398 addr, seg->s_segid, &sharedp->rsmsi_handle); in rsm_connect()
6425 sharedp->rsmsi_state = RSMSI_STATE_NEW; in rsm_connect()
6426 cv_broadcast(&sharedp->rsmsi_cv); in rsm_connect()
6442 seg->s_handle.in = sharedp->rsmsi_handle; in rsm_connect()
6461 msg->len = (int)sharedp->rsmsi_seglen; in rsm_connect()
6506 rsm_import_share_t *sharedp; in rsm_unmap() local
6525 sharedp = seg->s_share; in rsm_unmap()
6533 ASSERT(sharedp->rsmsi_state == RSMSI_STATE_MAPPED || in rsm_unmap()
6534 sharedp->rsmsi_state == RSMSI_STATE_MAP_QUIESCE); in rsm_unmap()
6543 ASSERT(sharedp->rsmsi_mapcnt > 0); in rsm_unmap()
6545 sharedp->rsmsi_mapcnt--; in rsm_unmap()
6547 if (sharedp->rsmsi_mapcnt == 0) { in rsm_unmap()
6548 if (sharedp->rsmsi_state == RSMSI_STATE_MAPPED) { in rsm_unmap()
6552 ASSERT(sharedp->rsmsi_handle != NULL); in rsm_unmap()
6554 rsm_unmap(sharedp->rsmsi_handle); in rsm_unmap()
6557 rsm_free_mapinfo(sharedp->rsmsi_mapinfo); in rsm_unmap()
6558 sharedp->rsmsi_mapinfo = NULL; in rsm_unmap()
6560 sharedp->rsmsi_state = RSMSI_STATE_CONNECTED; in rsm_unmap()
6562 sharedp->rsmsi_state = RSMSI_STATE_CONN_QUIESCE; in rsm_unmap()
6605 rsm_import_share_t *sharedp; in rsm_closeconnection() local
6635 sharedp = seg->s_share; in rsm_closeconnection()
6637 ASSERT(sharedp != NULL); in rsm_closeconnection()
6650 if ((sharedp->rsmsi_state == RSMSI_STATE_CONNECTED) && in rsm_closeconnection()
6651 (sharedp->rsmsi_node != my_nodeid)) { in rsm_closeconnection()
6653 if (sharedp->rsmsi_refcnt == 1) { in rsm_closeconnection()
6655 ASSERT(sharedp->rsmsi_mapcnt == 0); in rsm_closeconnection()
6658 rsm_disconnect(sharedp->rsmsi_handle); in rsm_closeconnection()
6669 sharedp->rsmsi_refcnt--; in rsm_closeconnection()
6671 if (sharedp->rsmsi_refcnt == 0) { in rsm_closeconnection()
6672 *cookie = (void *)sharedp->rsmsi_cookie; in rsm_closeconnection()
6673 sharedp->rsmsi_state = RSMSI_STATE_DISCONNECTED; in rsm_closeconnection()
6674 sharedp->rsmsi_handle = NULL; in rsm_closeconnection()
6678 mutex_destroy(&sharedp->rsmsi_lock); in rsm_closeconnection()
6679 cv_destroy(&sharedp->rsmsi_cv); in rsm_closeconnection()
6680 kmem_free((void *)(sharedp), sizeof (rsm_import_share_t)); in rsm_closeconnection()
8565 rsm_import_share_t *sharedp; in rsm_segmap() local
8691 sharedp = seg->s_share; in rsm_segmap()
8694 "rsm_segmap:RSMSI_STATE=%d\n", sharedp->rsmsi_state)); in rsm_segmap()
8696 if ((sharedp->rsmsi_state != RSMSI_STATE_CONNECTED) && in rsm_segmap()
8697 (sharedp->rsmsi_state != RSMSI_STATE_MAPPED)) { in rsm_segmap()
8702 sharedp->rsmsi_state)); in rsm_segmap()
8727 ASSERT(sharedp->rsmsi_state == RSMSI_STATE_CONNECTED || in rsm_segmap()
8728 sharedp->rsmsi_state == RSMSI_STATE_MAPPED); in rsm_segmap()
8730 if (sharedp->rsmsi_state == RSMSI_STATE_CONNECTED) { in rsm_segmap()
8754 p->next = sharedp->rsmsi_mapinfo; in rsm_segmap()
8755 sharedp->rsmsi_mapinfo = p; in rsm_segmap()
8761 seg->s_mapinfo = sharedp->rsmsi_mapinfo; in rsm_segmap()
8765 if (sharedp->rsmsi_mapinfo != NULL) { in rsm_segmap()
8771 rsm_unmap(sharedp->rsmsi_handle); in rsm_segmap()
8772 rsm_free_mapinfo(sharedp-> in rsm_segmap()
8775 sharedp->rsmsi_mapinfo = NULL; in rsm_segmap()
8776 sharedp->rsmsi_state = RSMSI_STATE_CONNECTED; in rsm_segmap()
8794 sharedp->rsmsi_state = RSMSI_STATE_MAPPED; in rsm_segmap()
8797 seg->s_mapinfo = sharedp->rsmsi_mapinfo; in rsm_segmap()
8800 sharedp->rsmsi_mapcnt++; in rsm_segmap()
8819 ASSERT(sharedp->rsmsi_state == RSMSI_STATE_MAPPED); in rsm_segmap()
8821 sharedp->rsmsi_mapcnt--; in rsm_segmap()
8822 if (sharedp->rsmsi_mapcnt == 0) { in rsm_segmap()
8824 ASSERT(sharedp->rsmsi_handle != NULL); in rsm_segmap()
8826 rsm_unmap(sharedp->rsmsi_handle); in rsm_segmap()
8827 rsm_free_mapinfo(sharedp->rsmsi_mapinfo); in rsm_segmap()
8828 sharedp->rsmsi_mapinfo = NULL; in rsm_segmap()
8829 sharedp->rsmsi_state = RSMSI_STATE_CONNECTED; in rsm_segmap()
8902 ASSERT(sharedp->rsmsi_state == RSMSI_STATE_CONNECTED || in rsm_segmap()
8903 sharedp->rsmsi_state == RSMSI_STATE_MAPPED); in rsm_segmap()
8905 sharedp->rsmsi_mapcnt++; in rsm_segmap()
8906 sharedp->rsmsi_state = RSMSI_STATE_MAPPED; in rsm_segmap()
8931 ASSERT(sharedp->rsmsi_state == RSMSI_STATE_MAPPED); in rsm_segmap()
8933 sharedp->rsmsi_mapcnt--; in rsm_segmap()
8934 if (sharedp->rsmsi_mapcnt == 0) { in rsm_segmap()
8935 sharedp->rsmsi_mapinfo = NULL; in rsm_segmap()
8936 sharedp->rsmsi_state = RSMSI_STATE_CONNECTED; in rsm_segmap()