Lines Matching defs:pip

135     mdi_pathinfo_t *pip);
919 mdi_pathinfo_t *pip;
984 (MDI_SELECT_ONLINE_PATH | MDI_SELECT_STANDBY_PATH), NULL, &pip);
986 mdi_rele_path(pip);
1041 NULL, &pip);
1043 mdi_rele_path(pip);
1134 mdi_pathinfo_t *pip;
1336 "reserved instance %d, new instance: %d, pip: 0x%p",
1348 (void *)(intptr_t)resrv_instance, &pip);
1350 if ((rval == MDI_SUCCESS) && (pip != NULL)) {
1352 mdi_pi_get_vhci_private(pip);
1373 ddi_pathname(mdi_pi_get_phci(pip), p_path));
1395 " RELEASE\n", (void *)pip));
1397 mdi_rele_path(pip);
1614 mdi_pathinfo_t *pip = NULL;
1640 rval = mdi_select_path(cdip, NULL, MDI_SELECT_ONLINE_PATH, NULL, &pip);
1641 if ((rval != MDI_SUCCESS) || (pip == NULL)) {
1647 svp = (scsi_vhci_priv_t *)mdi_pi_get_vhci_private(pip);
1650 "priv is NULL, pip 0x%p", (void *)pip));
1651 mdi_rele_path(pip);
1657 "psd is NULL, pip 0x%p, svp 0x%p",
1658 (void *)pip, (void *)svp));
1659 mdi_rele_path(pip);
1674 mdi_pi_spathname(pip), level);
1681 MDI_SELECT_ONLINE_PATH, pip, &npip);
1683 mdi_rele_path(pip);
1686 mdi_rele_path(pip);
1687 pip = npip;
1690 mdi_rele_path(pip);
1696 "reset %d sent down pip:%p for cdip:%p\n", level,
1697 (void *)pip, (void *)cdip));
1700 mdi_rele_path(pip);
2218 mdi_pathinfo_t *pip = NULL;
2246 NULL, &pip);
2247 if ((rval != MDI_SUCCESS) || (pip == NULL)) {
2251 npip = pip;
2259 pip = vlun->svl_first_path;
2262 pip = npip;
2266 pip, &npip);
2267 mdi_rele_path(pip);
2296 pip = vpkt->vpkt_path;
2313 * If reservation is active bind the transport directly to the pip
2319 pip = vlun->svl_resrv_pip;
2320 mdi_hold_path(pip);
2334 (void *)(intptr_t)path_instance, &pip);
2361 pip = NULL;
2363 mps_flag, NULL, &pip);
2364 if ((rval != MDI_SUCCESS) || (pip == NULL)) {
2372 mps_flag, NULL, &pip);
2373 if ((rval != MDI_SUCCESS) || (pip == NULL)) {
2389 if ((pip == NULL) || (rval == MDI_NOPATH)) {
2429 pip = NULL;
2431 0, NULL, &pip);
2432 if (pip != NULL) {
2489 vpkt->vpkt_path = pip;
2490 svp = (scsi_vhci_priv_t *)mdi_pi_get_vhci_private(pip);
2683 mdi_pathinfo_t *pip, *npip;
2695 pip = vpkt->vpkt_path;
2696 svp = (scsi_vhci_priv_t *)mdi_pi_get_vhci_private(pip);
2707 pip = npip = NULL;
2738 pip = npip;
2741 pip, &npip);
2742 mdi_rele_path(pip);
3793 mdi_pathinfo_t *pip, *npip;
3810 pip = npip = NULL;
3823 pip = npip;
3824 svp = (scsi_vhci_priv_t *)mdi_pi_get_vhci_private(pip);
3830 MDI_SELECT_NO_PREFERRED), pip, &npip);
3831 mdi_rele_path(pip);
3835 if (mdi_prop_lookup_string(pip, "path-class", &pclass) !=
3839 "path 0x%p\n", (void *)pip));
3842 MDI_SELECT_NO_PREFERRED), pip, &npip);
3843 mdi_rele_path(pip);
3853 (void) mdi_prop_update_string(pip, "path-class",
3865 if (!(MDI_PI_IS_ONLINE(pip))) {
3868 " 0x%p as ONLINE\n", (void *)pip));
3877 mdi_pi_spathname(pip));
3879 mdi_pi_set_state(pip,
3881 mdi_pi_set_preferred(pip,
3897 } else if (MDI_PI_IS_ONLINE(pip)) {
3900 mdi_pi_set_preferred(pip,
3947 mdi_rele_path(pip);
3960 mdi_pi_get_path_instance(pip);
3969 (void *)pip));
3976 !(MDI_PI_IS_STANDBY(pip))) {
3979 " 0x%p as STANDBY\n", (void *)pip));
3988 mdi_pi_spathname(pip));
3990 mdi_pi_set_state(pip,
3992 mdi_pi_set_preferred(pip,
4010 MDI_SELECT_NO_PREFERRED), pip, &npip);
4011 mdi_rele_path(pip);
4060 vhci_pathinfo_init(dev_info_t *vdip, mdi_pathinfo_t *pip, int flags)
4074 ASSERT(pip != NULL);
4079 pdip = mdi_pi_get_phci(pip);
4085 tgt_dip = mdi_pi_get_client(pip);
4155 psd->sd_pathinfo = pip;
4163 psd->sd_private = (caddr_t)pip;
4169 mdi_pi_set_vhci_private(pip, (caddr_t)svp);
4180 "path=0x%p rval=%x", (void *)pip, rval));
4188 (void *)pip));
4197 mdi_pi_set_vhci_private(pip, NULL);
4213 vhci_pathinfo_uninit(dev_info_t *vdip, mdi_pathinfo_t *pip, int flags)
4222 ASSERT(pip != NULL);
4224 pdip = mdi_pi_get_phci(pip);
4227 cdip = mdi_pi_get_client(pip);
4233 vhci_mpapi_set_path_state(vdip, pip, MP_DRVR_PATH_STATE_UNINIT);
4234 svp = (scsi_vhci_priv_t *)mdi_pi_get_vhci_private(pip);
4263 mdi_pi_set_vhci_private(pip, NULL);
4278 (void *)pip));
4284 vhci_pathinfo_state_change(dev_info_t *vdip, mdi_pathinfo_t *pip,
4305 svp = (scsi_vhci_priv_t *)mdi_pi_get_vhci_private(pip);
4330 "_state_change (pip:%p): "
4332 (void *)pip));
4335 if (pip == vlun->svl_resrv_pip) {
4345 " (pip:%p): "
4348 (void *)pip));
4358 MDI_PI_IS_USER_DISABLE(pip) &&
4359 MDI_PI_IS_STANDBY(pip)) {
4368 best_class = mdi_pi_get_preferred(pip);
4379 rv = mdi_prop_lookup_string(pip,
4421 (void *)pip,
4461 1, pip);
4481 rval = vhci_pathinfo_online(vdip, pip, flags);
4485 rval = vhci_pathinfo_offline(vdip, pip, flags);
4720 vhci_update_pathinfo(struct scsi_device *psd, mdi_pathinfo_t *pip,
4733 "Failed to get operation info for path:%p\n", (void *)pip));
4738 (void) mdi_prop_update_string(pip, "path-class",
4777 mdi_pi_set_state(pip,
4795 mdi_pi_set_state(pip,
4799 mdi_pi_set_preferred(pip,
4858 mdi_pi_set_state(pip, MDI_PATHINFO_STATE_ONLINE);
4872 mdi_pi_set_state(pip, MDI_PATHINFO_STATE_ONLINE);
4883 mdi_pi_set_state(pip,
4886 mdi_pi_set_preferred(pip,
4892 mdi_pi_set_state(pip, MDI_PATHINFO_STATE_STANDBY);
4908 ((MDI_PI_OLD_STATE(pip) == MDI_PATHINFO_STATE_OFFLINE)||
4909 (MDI_PI_OLD_STATE(pip) == MDI_PATHINFO_STATE_INIT))) {
4912 best_pclass, (void *)pip, vlun->svl_lun_wwn));
4919 mdi_pi_set_preferred(pip, opinfo.opinfo_preferred);
4933 vhci_kstat_create_pathinfo(mdi_pathinfo_t *pip)
4946 if (mdi_pi_kstat_exists(pip))
4953 tgt_dip = mdi_pi_get_client(pip);
4954 pdip = mdi_pi_get_phci(pip);
4978 if (mdi_prop_lookup_string(pip,
5036 "kstat %s: pid %x <-> port %s\n", (void *)pip,
5042 (void) mdi_pi_kstat_create(pip, ks_name);
5047 vhci_pathinfo_online(dev_info_t *vdip, mdi_pathinfo_t *pip, int flags)
5066 ASSERT(pip != NULL);
5071 pdip = mdi_pi_get_phci(pip);
5075 svp = (scsi_vhci_priv_t *)mdi_pi_get_vhci_private(pip);
5078 cdip = mdi_pi_get_client(pip);
5092 vlun->svl_dip = mdi_pi_get_client(pip);
5108 "scsi_probe failed path:%p rval:%x\n", (void *)pip, rval));
5141 (void *)pip));
5145 sfo ? sfo->sfo_name : "NULL", mdi_pi_pathname(pip));
5153 "supported\n", (void *)pip));
5217 (void *)pip));
5226 "Issued SCSI-2 RELEASE\n", (void *)pip));
5234 rval = vhci_update_pathinfo(psd, pip, sfo, vlun, vhci);
5240 vhci_update_mpapi_data(vhci, vlun, pip);
5260 vhci_kstat_create_pathinfo(pip);
5269 vlun->svl_sector_size, 1, pip);
5273 (void *)pip));
5288 vhci_pathinfo_offline(dev_info_t *vdip, mdi_pathinfo_t *pip, int flags)
5297 ASSERT(pip != NULL);
5299 pdip = mdi_pi_get_phci(pip);
5303 "phci dip", (void *)pip));
5307 cdip = mdi_pi_get_client(pip);
5311 "client dip", (void *)pip));
5318 svp = (scsi_vhci_priv_t *)mdi_pi_get_vhci_private(pip);
5325 "svp is NULL for pip 0x%p\n", (void *)pip));
5335 "%d cmds pending on path: 0x%p\n", svp->svp_cmds, (void *)pip));
5346 (void *)pip));
5349 svp->svp_cmds, (void *)pip));
5357 * is the pip for the path that has been reserved.
5365 if (pip == svp->svp_svl->svl_resrv_pip) {
5370 "!vhci_pathinfo_offline (pip:%p):"
5371 "reset failed, retrying\n", (void *)pip));
5378 "(pip:%p): reset failed, "
5379 "giving up!\n", (void *)pip));
5386 mdi_pi_set_state(pip, MDI_PATHINFO_STATE_OFFLINE);
5387 vhci_mpapi_set_path_state(vdip, pip, MP_DRVR_PATH_STATE_REMOVED);
5390 "!vhci_pathinfo_offline: offlined path 0x%p\n", (void *)pip));
5404 mdi_pathinfo_t *pip;
5733 if ((pip = mdi_pi_find(pdip, NULL, paddr)) == NULL) {
5741 cdip = mdi_pi_get_client(pip);
5780 if ((pip = mdi_pi_find(pdip, NULL, paddr)) == NULL) {
5792 retval = mdi_pi_online(pip, 0);
5796 retval = mdi_pi_offline(pip, 0);
5800 retval = mdi_pi_standby(pip, 0);
6089 mdi_pathinfo_t *pip;
6141 NULL, &pip);
6142 if ((retval != MDI_SUCCESS) || (pip == NULL)) {
6148 svp = (scsi_vhci_priv_t *)mdi_pi_get_vhci_private(pip);
6153 "!vhci_ioctl(pip:%p): "
6154 "reset failed\n", (void *)pip));
6157 mdi_rele_path(pip);
6278 mdi_pathinfo_t *pip;
6295 pip = mdi_get_next_client_path(pdip, NULL);
6296 while (pip && !done) {
6297 mdi_pi_lock(pip);
6298 (void) ddi_pathname(mdi_pi_get_phci(pip),
6300 (void) strcpy(ret_pip->ret_addr, mdi_pi_get_addr(pip));
6301 (void) mdi_pi_get_state2(pip, &ret_pip->ret_state,
6304 status = mdi_prop_size(pip, &prop_size);
6321 status = mdi_prop_pack(pip,
6335 mdi_pi_unlock(pip);
6336 pip = mdi_get_next_client_path(pdip, pip);
6361 mdi_pathinfo_t *pip;
6373 pip = mdi_get_next_phci_path(cdip, NULL);
6374 while (pip && !done) {
6375 mdi_pi_lock(pip);
6376 (void) ddi_pathname(mdi_pi_get_phci(pip),
6378 (void) strcpy(ret_pip->ret_addr, mdi_pi_get_addr(pip));
6379 (void) mdi_pi_get_state2(pip, &ret_pip->ret_state,
6382 status = mdi_prop_size(pip, &prop_size);
6399 status = mdi_prop_pack(pip,
6413 mdi_pi_unlock(pip);
6414 pip = mdi_get_next_phci_path(cdip, pip);
6834 mdi_pathinfo_t *pip, *npip;
6923 pip = npip = NULL;
6941 pip = npip;
6943 MDI_SELECT_STANDBY_PATH, pip, &npip);
6944 mdi_rele_path(pip);
7054 pip = npip;
7056 pip, &npip);
7057 mdi_rele_path(pip);
7071 pip = npip = NULL;
7085 pip = npip;
7090 pip, &npip);
7091 mdi_rele_path(pip);
7126 pip = npip;
7129 pip, &npip);
7130 mdi_rele_path(pip);
7181 mdi_pathinfo_t *pip;
7192 for (pip = mdi_get_next_phci_path(cdip, NULL); pip;
7193 pip = mdi_get_next_phci_path(cdip, pip))
7194 vhci_kstat_create_pathinfo(pip);
7207 mdi_pathinfo_t *npip, *pip;
7212 pip = npip = NULL;
7243 pip = npip;
7245 MDI_SELECT_ONLINE_PATH, pip, &npip);
7246 mdi_rele_path(pip);
7276 pip = npip;
7278 pip, &npip);
7279 mdi_rele_path(pip);
7488 mdi_pathinfo_t *pip, *spip;
7496 pip = spip = NULL;
7498 pip = mdi_get_next_phci_path(cdip, NULL);
7499 while (pip != NULL) {
7500 (void) mdi_pi_get_state2(pip, &pstate, &p_ext_state);
7502 spip = pip;
7503 pip = mdi_get_next_phci_path(cdip, spip);
7506 mdi_hold_path(pip);
7508 svp = (scsi_vhci_priv_t *)mdi_pi_get_vhci_private(pip);
7515 mdi_rele_path(pip);
7524 spip = pip;
7525 pip = mdi_get_next_phci_path(cdip, spip);
7538 mdi_pathinfo_t *pip, *npip;
7551 MDI_SELECT_STANDBY_PATH, NULL, &pip);
7552 if ((rval != MDI_SUCCESS) || (pip == NULL)) {
7569 npip = pip;
7570 pip = NULL;
7622 pip = npip;
7636 pip = npip;
7639 pip, &npip);
7640 mdi_rele_path(pip);
7658 ASSERT(pip != NULL);
7682 (void *)pip, (void *)svp, rval));
7684 mdi_rele_path(pip);
7691 mdi_rele_path(pip);
7700 npip = pip;
7701 pip = NULL;
7748 pip = npip;
7763 pip = npip;
7766 pip, &npip);
7767 mdi_rele_path(pip);
7775 mdi_rele_path(pip);
7798 MDI_SELECT_STANDBY_PATH, NULL, &pip);
7799 if ((rval != MDI_SUCCESS) || (pip == NULL)) {
7801 "%s%d: vhci_pgr_validate_and_register: no valid pip\n",
7831 mdi_rele_path(pip);
8073 mdi_pathinfo_t *pip)
8085 if (pip) {
8097 (void *)pip, (void *)ap, rval));
8110 sps = mdi_select_path(cdip, NULL, mps_flag, NULL, &pip);
8111 if ((sps != MDI_SUCCESS) || (pip == NULL)) {
8119 svp = (scsi_vhci_priv_t *)mdi_pi_get_vhci_private(pip);
8122 "priv is NULL, pip 0x%p", (void *)pip));
8123 mdi_rele_path(pip);
8129 "psd is NULL, pip 0x%p, svp 0x%p",
8130 (void *)pip, (void *)svp));
8131 mdi_rele_path(pip);
8145 (void *)pip, (void *)ap, rval));
8151 sps = mdi_select_path(cdip, NULL, mps_flag, pip, &npip);
8153 mdi_rele_path(pip);
8156 mdi_rele_path(pip);
8157 pip = npip;
8160 mdi_rele_path(pip);
8402 mdi_pi_kstat_iosupdate(mp_uscmdp->pip, bp);
8423 MDI_PI_ERRSTAT(mp_uscmdp->pip, MDI_PI_TRANSERR);
8425 MDI_PI_ERRSTAT(mp_uscmdp->pip, MDI_PI_HARDERR);
8447 mdi_pi_kstat_iosupdate(mp_uscmdp->pip, bp);
8474 MDI_PI_ERRSTAT(mp_uscmdp->pip, MDI_PI_TRANSERR);
8500 mdi_pi_kstat_iosupdate(mp_uscmdp->pip, bp);
8569 " ucdbp: %p pcdblen: %d bp: %p count: %ld pip: %p"
8573 (void *)bp, bp->b_bcount, (void *)mp_uscmdp->pip, stat_size));
8606 MDI_PI_ERRSTAT(mp_uscmdp->pip, MDI_PI_TRANSERR);