Lines Matching refs:iocb
106 int fn, void *iocb, int flags);
496 static int qlt_reset(struct scsi_qla_host *vha, void *iocb, int mcmd) in qlt_reset() argument
503 struct imm_ntfy_from_isp *n = (struct imm_ntfy_from_isp *)iocb; in qlt_reset()
504 struct atio_from_isp *a = (struct atio_from_isp *)iocb; in qlt_reset()
556 iocb, QLA24XX_MGMT_SEND_NACK); in qlt_reset()
3815 int fn, void *iocb, int flags) in qlt_issue_task_mgmt() argument
3820 struct atio_from_isp *a = (struct atio_from_isp *)iocb; in qlt_issue_task_mgmt()
3835 if (iocb) { in qlt_issue_task_mgmt()
3836 memcpy(&mcmd->orig_iocb.imm_ntfy, iocb, in qlt_issue_task_mgmt()
3924 static int qlt_handle_task_mgmt(struct scsi_qla_host *vha, void *iocb) in qlt_handle_task_mgmt() argument
3926 struct atio_from_isp *a = (struct atio_from_isp *)iocb; in qlt_handle_task_mgmt()
3946 return qlt_sched_sess_work(tgt, QLA_TGT_SESS_WORK_TM, iocb, in qlt_handle_task_mgmt()
3953 return qlt_issue_task_mgmt(sess, unpacked_lun, fn, iocb, 0); in qlt_handle_task_mgmt()
3958 struct imm_ntfy_from_isp *iocb, struct qla_tgt_sess *sess) in __qlt_abort_task() argument
3960 struct atio_from_isp *a = (struct atio_from_isp *)iocb; in __qlt_abort_task()
3976 memcpy(&mcmd->orig_iocb.imm_ntfy, iocb, in __qlt_abort_task()
3984 le16_to_cpu(iocb->u.isp2x.seq_id)); in __qlt_abort_task()
3998 struct imm_ntfy_from_isp *iocb) in qlt_abort_task() argument
4004 loop_id = GET_TARGET_ID(ha, (struct atio_from_isp *)iocb); in qlt_abort_task()
4012 QLA_TGT_SESS_WORK_ABORT, iocb, sizeof(*iocb)); in qlt_abort_task()
4015 return __qlt_abort_task(vha, iocb, sess); in qlt_abort_task()
4148 struct imm_ntfy_from_isp *iocb) in qlt_24xx_handle_els() argument
4159 wwn = wwn_to_u64(iocb->u.isp24.port_name); in qlt_24xx_handle_els()
4161 port_id.b.domain = iocb->u.isp24.port_id[2]; in qlt_24xx_handle_els()
4162 port_id.b.area = iocb->u.isp24.port_id[1]; in qlt_24xx_handle_els()
4163 port_id.b.al_pa = iocb->u.isp24.port_id[0]; in qlt_24xx_handle_els()
4166 loop_id = le16_to_cpu(iocb->u.isp24.nport_handle); in qlt_24xx_handle_els()
4170 vha->vp_idx, iocb->u.isp24.port_id, iocb->u.isp24.status_subcode); in qlt_24xx_handle_els()
4175 switch (iocb->u.isp24.status_subcode) { in qlt_24xx_handle_els()
4200 qlt_swap_imm_ntfy_iocb(iocb, &sess->tm_iocb); in qlt_24xx_handle_els()
4202 qlt_send_term_imm_notif(vha, iocb, 1); in qlt_24xx_handle_els()
4214 memcpy(&sess->tm_iocb, iocb, sizeof(sess->tm_iocb)); in qlt_24xx_handle_els()
4241 wd3_lo = le16_to_cpu(iocb->u.isp24.u.prli.wd3_lo); in qlt_24xx_handle_els()
4257 qlt_send_term_imm_notif(vha, iocb, 1); in qlt_24xx_handle_els()
4268 sess->loop_id, sess, iocb->u.isp24.nport_handle); in qlt_24xx_handle_els()
4294 res = qlt_reset(vha, iocb, QLA_TGT_NEXUS_LOSS_SESS); in qlt_24xx_handle_els()
4313 "received\n", vha->vp_idx, iocb->u.isp24.status_subcode); in qlt_24xx_handle_els()
4314 res = qlt_reset(vha, iocb, QLA_TGT_NEXUS_LOSS_SESS); in qlt_24xx_handle_els()
4678 struct imm_ntfy_from_isp *iocb) in qlt_prepare_srr_imm() argument
4691 memcpy(&imm->imm_ntfy, iocb, sizeof(imm->imm_ntfy)); in qlt_prepare_srr_imm()
4700 imm, imm->srr_id, iocb->u.isp24.srr_ui); in qlt_prepare_srr_imm()
4758 qlt_send_notify_ack(vha, iocb, 0, 0, 0, in qlt_prepare_srr_imm()
4768 struct imm_ntfy_from_isp *iocb) in qlt_handle_imm_notify() argument
4775 status = le16_to_cpu(iocb->u.isp2x.status); in qlt_handle_imm_notify()
4781 vha->vp_idx, le16_to_cpu(iocb->u.isp24.nport_handle), in qlt_handle_imm_notify()
4782 iocb->u.isp24.status_subcode); in qlt_handle_imm_notify()
4784 if (qlt_reset(vha, iocb, QLA_TGT_ABORT_ALL) == 0) in qlt_handle_imm_notify()
4795 le16_to_cpu(iocb->u.isp24.nport_handle), in qlt_handle_imm_notify()
4796 iocb->u.isp24.status_subcode); in qlt_handle_imm_notify()
4801 memcpy(&tgt->link_reinit_iocb, iocb, sizeof(*iocb)); in qlt_handle_imm_notify()
4815 le16_to_cpu(iocb->u.isp24.nport_handle), in qlt_handle_imm_notify()
4816 iocb->u.isp24.status_subcode); in qlt_handle_imm_notify()
4818 if (qlt_reset(vha, iocb, QLA_TGT_NEXUS_LOSS_SESS) == 0) in qlt_handle_imm_notify()
4826 if (qlt_reset(vha, iocb, QLA_TGT_NEXUS_LOSS) == 0) in qlt_handle_imm_notify()
4835 if (qlt_reset(vha, iocb, QLA_TGT_ABORT_ALL) == 0) in qlt_handle_imm_notify()
4845 if (qlt_reset(vha, iocb, QLA_TGT_NEXUS_LOSS) == 0) in qlt_handle_imm_notify()
4860 le16_to_cpu(iocb->u.isp2x.seq_id), in qlt_handle_imm_notify()
4861 GET_TARGET_ID(ha, (struct atio_from_isp *)iocb), in qlt_handle_imm_notify()
4862 le16_to_cpu(iocb->u.isp2x.lun)); in qlt_handle_imm_notify()
4863 if (qlt_abort_task(vha, iocb) == 0) in qlt_handle_imm_notify()
4876 vha->vp_idx, iocb->u.isp2x.task_flags); in qlt_handle_imm_notify()
4877 if (qlt_handle_task_mgmt(vha, iocb) == 0) in qlt_handle_imm_notify()
4882 if (qlt_24xx_handle_els(vha, iocb) == 0) in qlt_handle_imm_notify()
4887 qlt_prepare_srr_imm(vha, iocb); in qlt_handle_imm_notify()
4899 qlt_send_notify_ack(vha, iocb, add_flags, 0, 0, 0, 0, 0); in qlt_handle_imm_notify()
5665 void *iocb; in qlt_tmr_work() local
5694 iocb = a; in qlt_tmr_work()
5700 rc = qlt_issue_task_mgmt(sess, unpacked_lun, fn, iocb, 0); in qlt_tmr_work()