Lines Matching refs:iocb

115 	int fn, void *iocb, int flags);
558 memcpy(e->u.nack.iocb, ntfy, sizeof(struct imm_ntfy_from_isp)); in qla24xx_post_nack_work()
691 (struct imm_ntfy_from_isp *)e->u.nack.iocb, e->u.nack.type); in qla24xx_do_nack_work()
785 struct imm_ntfy_from_isp *iocb) in qlt_plogi_ack_find_add() argument
796 pla->iocb.u.isp24.port_name); in qlt_plogi_ack_find_add()
797 qlt_send_term_imm_notif(vha, &pla->iocb, 1); in qlt_plogi_ack_find_add()
798 memcpy(&pla->iocb, iocb, sizeof(pla->iocb)); in qlt_plogi_ack_find_add()
811 memcpy(&pla->iocb, iocb, sizeof(pla->iocb)); in qlt_plogi_ack_find_add()
821 struct imm_ntfy_from_isp *iocb = &pla->iocb; in qlt_plogi_ack_unref() local
834 " exch %#x ox_id %#x\n", iocb->u.isp24.port_name, in qlt_plogi_ack_unref()
835 iocb->u.isp24.port_id[2], iocb->u.isp24.port_id[1], in qlt_plogi_ack_unref()
836 iocb->u.isp24.port_id[0], in qlt_plogi_ack_unref()
837 le16_to_cpu(iocb->u.isp24.nport_handle), in qlt_plogi_ack_unref()
838 iocb->u.isp24.exchange_address, iocb->ox_id); in qlt_plogi_ack_unref()
840 port_id.b.domain = iocb->u.isp24.port_id[2]; in qlt_plogi_ack_unref()
841 port_id.b.area = iocb->u.isp24.port_id[1]; in qlt_plogi_ack_unref()
842 port_id.b.al_pa = iocb->u.isp24.port_id[0]; in qlt_plogi_ack_unref()
845 loop_id = le16_to_cpu(iocb->u.isp24.nport_handle); in qlt_plogi_ack_unref()
849 if (iocb->u.isp24.status_subcode == ELS_PLOGI) in qlt_plogi_ack_unref()
850 qla24xx_post_nack_work(vha, fcport, iocb, SRB_NACK_PLOGI); in qlt_plogi_ack_unref()
852 qla24xx_post_nack_work(vha, fcport, iocb, SRB_NACK_PRLI); in qlt_plogi_ack_unref()
869 struct imm_ntfy_from_isp *iocb = &pla->iocb; in qlt_plogi_ack_link() local
877 iocb->u.isp24.port_name, iocb->u.isp24.port_id[2], in qlt_plogi_ack_link()
878 iocb->u.isp24.port_id[1], iocb->u.isp24.port_id[0], in qlt_plogi_ack_link()
986 (own->iocb.u.isp24.status_subcode == ELS_PLOGI))) { in qlt_free_session_done()
995 } else if (own && (own->iocb.u.isp24.status_subcode == in qlt_free_session_done()
1045 (struct imm_ntfy_from_isp *)sess->iocb, SRB_NACK_LOGO); in qlt_free_session_done()
1076 struct imm_ntfy_from_isp *iocb; in qlt_free_session_done() local
1081 iocb = &con->iocb; in qlt_free_session_done()
1088 iocb->u.isp24.port_name, con->ref_count); in qlt_free_session_done()
1168 static int qlt_reset(struct scsi_qla_host *vha, void *iocb, int mcmd) in qlt_reset() argument
1174 struct imm_ntfy_from_isp *n = (struct imm_ntfy_from_isp *)iocb; in qlt_reset()
1202 return qlt_issue_task_mgmt(sess, 0, mcmd, iocb, QLA24XX_MGMT_SEND_NACK); in qlt_reset()
4383 int fn, void *iocb, int flags) in qlt_issue_task_mgmt() argument
4388 struct atio_from_isp *a = (struct atio_from_isp *)iocb; in qlt_issue_task_mgmt()
4402 if (iocb) { in qlt_issue_task_mgmt()
4403 memcpy(&mcmd->orig_iocb.imm_ntfy, iocb, in qlt_issue_task_mgmt()
4443 static int qlt_handle_task_mgmt(struct scsi_qla_host *vha, void *iocb) in qlt_handle_task_mgmt() argument
4445 struct atio_from_isp *a = (struct atio_from_isp *)iocb; in qlt_handle_task_mgmt()
4465 return qlt_issue_task_mgmt(sess, unpacked_lun, fn, iocb, 0); in qlt_handle_task_mgmt()
4470 struct imm_ntfy_from_isp *iocb, struct fc_port *sess) in __qlt_abort_task() argument
4472 struct atio_from_isp *a = (struct atio_from_isp *)iocb; in __qlt_abort_task()
4488 memcpy(&mcmd->orig_iocb.imm_ntfy, iocb, in __qlt_abort_task()
4498 le16_to_cpu(iocb->u.isp2x.seq_id)); in __qlt_abort_task()
4512 struct imm_ntfy_from_isp *iocb) in qlt_abort_task() argument
4519 loop_id = GET_TARGET_ID(ha, (struct atio_from_isp *)iocb); in qlt_abort_task()
4530 QLA_TGT_SESS_WORK_ABORT, iocb, sizeof(*iocb)); in qlt_abort_task()
4533 return __qlt_abort_task(vha, iocb, sess); in qlt_abort_task()
4673 struct imm_ntfy_from_isp *iocb) in qlt_handle_login() argument
4685 wwn = wwn_to_u64(iocb->u.isp24.port_name); in qlt_handle_login()
4687 port_id.b.domain = iocb->u.isp24.port_id[2]; in qlt_handle_login()
4688 port_id.b.area = iocb->u.isp24.port_id[1]; in qlt_handle_login()
4689 port_id.b.al_pa = iocb->u.isp24.port_id[0]; in qlt_handle_login()
4692 loop_id = le16_to_cpu(iocb->u.isp24.nport_handle); in qlt_handle_login()
4706 qlt_send_term_imm_notif(vha, iocb, 1); in qlt_handle_login()
4715 pla = qlt_plogi_ack_find_add(vha, &port_id, iocb); in qlt_handle_login()
4720 iocb->u.isp24.port_name); in qlt_handle_login()
4721 qlt_send_term_imm_notif(vha, iocb, 1); in qlt_handle_login()
4735 __func__, __LINE__, iocb->u.isp24.port_name); in qlt_handle_login()
4736 if (iocb->u.isp24.status_subcode == ELS_PLOGI) in qlt_handle_login()
4738 iocb->u.isp24.port_name, in qlt_handle_login()
4739 iocb->u.isp24.u.plogi.node_name, in qlt_handle_login()
4743 iocb->u.isp24.port_name, NULL, in qlt_handle_login()
4773 qlt_send_term_imm_notif(vha, iocb, 1); in qlt_handle_login()
4781 if (iocb->u.isp24.status_subcode == ELS_PRLI) { in qlt_handle_login()
4787 wd3_lo = le16_to_cpu(iocb->u.isp24.u.prli.wd3_lo); in qlt_handle_login()
4848 struct imm_ntfy_from_isp *iocb) in qlt_24xx_handle_els() argument
4862 wwn = wwn_to_u64(iocb->u.isp24.port_name); in qlt_24xx_handle_els()
4864 port_id.b.domain = iocb->u.isp24.port_id[2]; in qlt_24xx_handle_els()
4865 port_id.b.area = iocb->u.isp24.port_id[1]; in qlt_24xx_handle_els()
4866 port_id.b.al_pa = iocb->u.isp24.port_id[0]; in qlt_24xx_handle_els()
4869 loop_id = le16_to_cpu(iocb->u.isp24.nport_handle); in qlt_24xx_handle_els()
4873 vha->vp_idx, iocb->u.isp24.port_id[2], in qlt_24xx_handle_els()
4874 iocb->u.isp24.port_id[1], iocb->u.isp24.port_id[0], in qlt_24xx_handle_els()
4875 iocb->u.isp24.status_subcode, loop_id, in qlt_24xx_handle_els()
4876 iocb->u.isp24.port_name); in qlt_24xx_handle_els()
4881 switch (iocb->u.isp24.status_subcode) { in qlt_24xx_handle_els()
4883 res = qlt_handle_login(vha, iocb); in qlt_24xx_handle_els()
4889 iocb->u.isp24.port_name, 1); in qlt_24xx_handle_els()
4895 iocb->u.isp24.port_name); in qlt_24xx_handle_els()
4896 qlt_send_term_imm_notif(vha, iocb, 1); in qlt_24xx_handle_els()
4900 res = qlt_handle_login(vha, iocb); in qlt_24xx_handle_els()
4909 wd3_lo = le16_to_cpu(iocb->u.isp24.u.prli.wd3_lo); in qlt_24xx_handle_els()
4929 qlt_send_term_imm_notif(vha, iocb, 1); in qlt_24xx_handle_els()
4964 qlt_send_term_imm_notif(vha, iocb, 1); in qlt_24xx_handle_els()
4988 qlt_send_term_imm_notif(vha, iocb, 1); in qlt_24xx_handle_els()
4999 sess->loop_id, sess, iocb->u.isp24.nport_handle); in qlt_24xx_handle_els()
5024 qla24xx_post_nack_work(vha, sess, iocb, in qlt_24xx_handle_els()
5037 qla24xx_post_nack_work(vha, sess, iocb, in qlt_24xx_handle_els()
5045 if (le16_to_cpu(iocb->u.isp24.flags) & in qlt_24xx_handle_els()
5048 qlt_reset(vha, iocb, QLA_TGT_NEXUS_LOSS); in qlt_24xx_handle_els()
5063 memcpy(sess->iocb, iocb, IOCB_SIZE); in qlt_24xx_handle_els()
5066 res = qlt_reset(vha, iocb, QLA_TGT_NEXUS_LOSS_SESS); in qlt_24xx_handle_els()
5099 iocb->u.isp24.port_name, 1); in qlt_24xx_handle_els()
5115 "received\n", vha->vp_idx, iocb->u.isp24.status_subcode); in qlt_24xx_handle_els()
5116 res = qlt_reset(vha, iocb, QLA_TGT_NEXUS_LOSS_SESS); in qlt_24xx_handle_els()
5122 vha->vp_idx, iocb->u.isp24.status_subcode, res); in qlt_24xx_handle_els()
5131 struct imm_ntfy_from_isp *iocb) in qlt_handle_imm_notify() argument
5140 status = le16_to_cpu(iocb->u.isp2x.status); in qlt_handle_imm_notify()
5146 vha->vp_idx, le16_to_cpu(iocb->u.isp24.nport_handle), in qlt_handle_imm_notify()
5147 iocb->u.isp24.status_subcode); in qlt_handle_imm_notify()
5149 if (qlt_reset(vha, iocb, QLA_TGT_ABORT_ALL) == 0) in qlt_handle_imm_notify()
5161 le16_to_cpu(iocb->u.isp24.nport_handle), in qlt_handle_imm_notify()
5162 iocb->u.isp24.status_subcode); in qlt_handle_imm_notify()
5167 memcpy(&tgt->link_reinit_iocb, iocb, sizeof(*iocb)); in qlt_handle_imm_notify()
5181 le16_to_cpu(iocb->u.isp24.nport_handle), in qlt_handle_imm_notify()
5182 iocb->u.isp24.status_subcode); in qlt_handle_imm_notify()
5184 if (qlt_reset(vha, iocb, QLA_TGT_NEXUS_LOSS_SESS) == 0) in qlt_handle_imm_notify()
5192 if (qlt_reset(vha, iocb, QLA_TGT_NEXUS_LOSS) == 0) in qlt_handle_imm_notify()
5201 if (qlt_reset(vha, iocb, QLA_TGT_ABORT_ALL) == 0) in qlt_handle_imm_notify()
5211 if (qlt_reset(vha, iocb, QLA_TGT_NEXUS_LOSS) == 0) in qlt_handle_imm_notify()
5226 le16_to_cpu(iocb->u.isp2x.seq_id), in qlt_handle_imm_notify()
5227 GET_TARGET_ID(ha, (struct atio_from_isp *)iocb), in qlt_handle_imm_notify()
5228 le16_to_cpu(iocb->u.isp2x.lun)); in qlt_handle_imm_notify()
5229 if (qlt_abort_task(vha, iocb) == 0) in qlt_handle_imm_notify()
5242 vha->vp_idx, iocb->u.isp2x.task_flags); in qlt_handle_imm_notify()
5246 if (qlt_24xx_handle_els(vha, iocb) == 0) in qlt_handle_imm_notify()
5257 qlt_send_notify_ack(ha->base_qpair, iocb, add_flags, 0, 0, 0, in qlt_handle_imm_notify()
6232 void *iocb; in qlt_tmr_work() local
6263 iocb = a; in qlt_tmr_work()
6268 rc = qlt_issue_task_mgmt(sess, unpacked_lun, fn, iocb, 0); in qlt_tmr_work()