Lines Matching full:srp

510 	 * Initiator has not done a successful srp login  in ibmvscsis_disconnect()
511 * or has done a successful srp logout ( adapter was not in ibmvscsis_disconnect()
1079 dev_dbg(&vscsi->dev, "trans_event: SRP Processing, but no outstanding work\n"); in ibmvscsis_trans_event()
1434 * Copy the srp information unit from the hosted
1796 * If the server is processing SRP requests, i.e. in srp_snd_msg_failed()
2095 * @cmd: Pointer to the command for the SRP Login request
2104 struct srp_login_rsp *rsp = &vio_iu(iue)->srp.login_rsp; in ibmvscsis_login_rsp()
2154 * @cmd: Pointer to the command for the SRP Login request
2155 * @reason: The reason the SRP Login is being rejected, per SRP protocol
2164 struct srp_login_rej *rej = &vio_iu(iue)->srp.login_rej; in ibmvscsis_srp_login_rej()
2266 * ibmvscsis_srp_login() - Process an SRP Login Request
2268 * @cmd: Command element to use to process the SRP Login request
2269 * @crq: Pointer to CRQ entry containing the SRP Login request
2279 struct srp_login_req *req = &vio_iu(iue)->srp.login_req; in ibmvscsis_srp_login()
2353 struct srp_i_logout *log_out = &vio_iu(iue)->srp.i_logout; in ibmvscsis_srp_i_logout()
2377 struct srp_cmd *srp; in ibmvscsis_srp_cmd() local
2397 srp = &vio_iu(iue)->srp.cmd; in ibmvscsis_srp_cmd()
2406 switch (srp->opcode) { in ibmvscsis_srp_cmd()
2412 tsk = &vio_iu(iue)->srp.tsk_mgmt; in ibmvscsis_srp_cmd()
2424 srp->tag, srp->tag); in ibmvscsis_srp_cmd()
2425 cmd->rsp.tag = srp->tag; in ibmvscsis_srp_cmd()
2444 dev_err(&vscsi->dev, "invalid srp cmd, opcode %d\n", in ibmvscsis_srp_cmd()
2445 (uint)srp->opcode); in ibmvscsis_srp_cmd()
2450 } else if (srp->opcode == SRP_LOGIN_REQ && vscsi->state == CONNECTED) { in ibmvscsis_srp_cmd()
2454 dev_err(&vscsi->dev, "Invalid state %d to handle srp cmd\n", in ibmvscsis_srp_cmd()
2514 * @crq: Pointer to CRQ element containing the SRP request
2517 * and the srp iu or MAD request it pointed to was also valid. That does
2654 * ibmvscsis_parse_cmd() - Parse SRP Command
2656 * @cmd: Pointer to command element with SRP command
2658 * Parse the srp command; if it is valid then submit it to tcm.
2668 struct srp_cmd *srp = (struct srp_cmd *)iue->sbuf->buf; in ibmvscsis_parse_cmd() local
2677 * additional length in bytes. Note that the SRP spec says that in ibmvscsis_parse_cmd()
2684 if (srp->add_cdb_len & 0x03) { in ibmvscsis_parse_cmd()
2693 if (srp_get_desc_table(srp, &dir, &data_len)) { in ibmvscsis_parse_cmd()
2694 dev_err(&vscsi->dev, "0x%llx: parsing SRP descriptor table failed.\n", in ibmvscsis_parse_cmd()
2695 srp->tag); in ibmvscsis_parse_cmd()
2699 cmd->rsp.sol_not = srp->sol_not; in ibmvscsis_parse_cmd()
2701 switch (srp->task_attr) { in ibmvscsis_parse_cmd()
2716 srp->task_attr); in ibmvscsis_parse_cmd()
2720 cmd->se_cmd.tag = be64_to_cpu(srp->tag); in ibmvscsis_parse_cmd()
2726 srp->lun.scsi_lun[0] &= 0x3f; in ibmvscsis_parse_cmd()
2728 rc = target_submit_cmd(&cmd->se_cmd, nexus->se_sess, srp->cdb, in ibmvscsis_parse_cmd()
2729 cmd->sense_buf, scsilun_to_int(&srp->lun), in ibmvscsis_parse_cmd()
2748 * ibmvscsis_parse_task() - Parse SRP Task Management Request
2750 * @cmd: Pointer to command element with SRP task management request
2752 * Parse the srp task management request; if it is valid then submit it to tcm.
2763 struct srp_tsk_mgmt *srp_tsk = &vio_iu(iue)->srp.tsk_mgmt; in ibmvscsis_parse_task()
3059 struct srp_cmd *srp = (struct srp_cmd *)iue->sbuf->buf; in ibmvscsis_fast_fail() local
3063 if (vscsi->fast_fail && (READ_CMD(srp->cdb) || WRITE_CMD(srp->cdb))) in ibmvscsis_fast_fail()
3077 * srp_build_response() - Build an SRP response buffer
3083 * Build the SRP response buffer and copy it to the client's memory space.
3099 rsp = &vio_iu(iue)->srp.rsp; in srp_build_response()
3327 * SRP requests.
3767 rc = srp_transfer_data(cmd, &vio_iu(iue)->srp.cmd, ibmvscsis_rdma, in ibmvscsis_write_pending()
3799 rc = srp_transfer_data(cmd, &vio_iu(iue)->srp.cmd, ibmvscsis_rdma, 1, in ibmvscsis_queue_data_in()
3840 struct srp_tsk_mgmt *srp_tsk = &vio_iu(iue)->srp.tsk_mgmt; in ibmvscsis_queue_tm_rsp()