• Home
  • Raw
  • Download

Lines Matching refs:hdr

513 	struct iscsi_hdr *hdr = (struct iscsi_hdr *)cmd->pdu;  in iscsit_xmit_nondatain_pdu()  local
525 iscsit_do_crypto_hash_buf(conn->conn_tx_hash, hdr, in iscsit_xmit_nondatain_pdu()
533 hdr->opcode, *header_digest); in iscsit_xmit_nondatain_pdu()
563 data_buf_len, hdr->opcode, cmd->data_crc); in iscsit_xmit_nondatain_pdu()
1002 struct iscsi_scsi_req *hdr; in iscsit_setup_scsi_cmd() local
1008 hdr = (struct iscsi_scsi_req *) buf; in iscsit_setup_scsi_cmd()
1009 payload_length = ntoh24(hdr->dlength); in iscsit_setup_scsi_cmd()
1013 if (!(hdr->flags & ISCSI_FLAG_CMD_WRITE) && in iscsit_setup_scsi_cmd()
1014 !(hdr->flags & ISCSI_FLAG_CMD_FINAL)) { in iscsit_setup_scsi_cmd()
1021 if (((hdr->flags & ISCSI_FLAG_CMD_READ) || in iscsit_setup_scsi_cmd()
1022 (hdr->flags & ISCSI_FLAG_CMD_WRITE)) && !hdr->data_length) { in iscsit_setup_scsi_cmd()
1033 hdr->flags &= ~ISCSI_FLAG_CMD_READ; in iscsit_setup_scsi_cmd()
1034 hdr->flags &= ~ISCSI_FLAG_CMD_WRITE; in iscsit_setup_scsi_cmd()
1038 " CDB: 0x%02x, Fixing up flags\n", hdr->cdb[0]); in iscsit_setup_scsi_cmd()
1041 if (!(hdr->flags & ISCSI_FLAG_CMD_READ) && in iscsit_setup_scsi_cmd()
1042 !(hdr->flags & ISCSI_FLAG_CMD_WRITE) && (hdr->data_length != 0)) { in iscsit_setup_scsi_cmd()
1050 if ((hdr->flags & ISCSI_FLAG_CMD_READ) && in iscsit_setup_scsi_cmd()
1051 (hdr->flags & ISCSI_FLAG_CMD_WRITE)) { in iscsit_setup_scsi_cmd()
1057 if (hdr->opcode & ISCSI_OP_IMMEDIATE) { in iscsit_setup_scsi_cmd()
1071 if ((be32_to_cpu(hdr->data_length) == payload_length) && in iscsit_setup_scsi_cmd()
1072 (!(hdr->flags & ISCSI_FLAG_CMD_FINAL))) { in iscsit_setup_scsi_cmd()
1080 if (payload_length > be32_to_cpu(hdr->data_length)) { in iscsit_setup_scsi_cmd()
1083 hdr->data_length); in iscsit_setup_scsi_cmd()
1104 data_direction = (hdr->flags & ISCSI_FLAG_CMD_WRITE) ? DMA_TO_DEVICE : in iscsit_setup_scsi_cmd()
1105 (hdr->flags & ISCSI_FLAG_CMD_READ) ? DMA_FROM_DEVICE : in iscsit_setup_scsi_cmd()
1109 iscsi_task_attr = hdr->flags & ISCSI_FLAG_CMD_ATTR_MASK; in iscsit_setup_scsi_cmd()
1130 cmd->immediate_cmd = ((hdr->opcode & ISCSI_OP_IMMEDIATE) ? 1 : 0); in iscsit_setup_scsi_cmd()
1132 cmd->unsolicited_data = ((!(hdr->flags & ISCSI_FLAG_CMD_FINAL) && in iscsit_setup_scsi_cmd()
1133 (hdr->flags & ISCSI_FLAG_CMD_WRITE)) ? 1 : 0); in iscsit_setup_scsi_cmd()
1137 conn->sess->init_task_tag = cmd->init_task_tag = hdr->itt; in iscsit_setup_scsi_cmd()
1138 if (hdr->flags & ISCSI_FLAG_CMD_READ) in iscsit_setup_scsi_cmd()
1142 cmd->cmd_sn = be32_to_cpu(hdr->cmdsn); in iscsit_setup_scsi_cmd()
1143 cmd->exp_stat_sn = be32_to_cpu(hdr->exp_statsn); in iscsit_setup_scsi_cmd()
1162 conn->sess->se_sess, be32_to_cpu(hdr->data_length), in iscsit_setup_scsi_cmd()
1167 " ExpXferLen: %u, Length: %u, CID: %hu\n", hdr->itt, in iscsit_setup_scsi_cmd()
1168 hdr->cmdsn, be32_to_cpu(hdr->data_length), payload_length, in iscsit_setup_scsi_cmd()
1174 scsilun_to_int(&hdr->lun)); in iscsit_setup_scsi_cmd()
1180 cmd->sense_reason = target_setup_cmd_from_cdb(&cmd->se_cmd, hdr->cdb); in iscsit_setup_scsi_cmd()
1220 struct iscsi_scsi_req *hdr) in iscsit_process_scsi_cmd() argument
1235 (unsigned char *)hdr, hdr->cmdsn); in iscsit_process_scsi_cmd()
1244 iscsit_ack_from_expstatsn(conn, be32_to_cpu(hdr->exp_statsn)); in iscsit_process_scsi_cmd()
1283 iscsit_get_immediate_data(struct iscsi_cmd *cmd, struct iscsi_scsi_req *hdr, in iscsit_get_immediate_data() argument
1305 immed_ret = iscsit_handle_immediate_data(cmd, hdr, in iscsit_get_immediate_data()
1315 (unsigned char *)hdr, hdr->cmdsn); in iscsit_get_immediate_data()
1353 struct iscsi_scsi_req *hdr = (struct iscsi_scsi_req *)buf; in iscsit_handle_scsi_cmd() local
1370 rc = iscsit_process_scsi_cmd(conn, cmd, hdr); in iscsit_handle_scsi_cmd()
1379 return iscsit_get_immediate_data(cmd, hdr, dump_payload); in iscsit_handle_scsi_cmd()
1449 struct iscsi_data *hdr = (struct iscsi_data *)buf; in iscsit_check_dataout_hdr() local
1452 u32 payload_length = ntoh24(hdr->dlength); in iscsit_check_dataout_hdr()
1471 cmd = iscsit_find_cmd_from_itt_or_dump(conn, hdr->itt, in iscsit_check_dataout_hdr()
1478 hdr->itt, hdr->ttt, hdr->datasn, ntohl(hdr->offset), in iscsit_check_dataout_hdr()
1496 if ((be32_to_cpu(hdr->offset) + payload_length) > cmd->se_cmd.data_length) { in iscsit_check_dataout_hdr()
1499 hdr->offset, payload_length, cmd->se_cmd.data_length); in iscsit_check_dataout_hdr()
1530 if (hdr->flags & ISCSI_FLAG_CMD_FINAL) in iscsit_check_dataout_hdr()
1534 (hdr->flags & ISCSI_FLAG_CMD_FINAL)); in iscsit_check_dataout_hdr()
1549 if (hdr->flags & ISCSI_FLAG_CMD_FINAL) in iscsit_check_dataout_hdr()
1576 struct iscsi_data *hdr) in iscsit_get_dataout() argument
1580 u32 payload_length = ntoh24(hdr->dlength); in iscsit_get_dataout()
1586 iov_ret = iscsit_map_iovec(cmd, iov, be32_to_cpu(hdr->offset), in iscsit_get_dataout()
1618 be32_to_cpu(hdr->offset), in iscsit_get_dataout()
1626 hdr->itt, hdr->offset, payload_length, in iscsit_get_dataout()
1627 hdr->datasn, checksum, data_crc); in iscsit_get_dataout()
1640 iscsit_check_dataout_payload(struct iscsi_cmd *cmd, struct iscsi_data *hdr, in iscsit_check_dataout_payload() argument
1649 rc = iscsit_check_post_dataout(cmd, (unsigned char *)hdr, data_crc_failed); in iscsit_check_dataout_payload()
1681 struct iscsi_data *hdr = (struct iscsi_data *)buf; in iscsit_handle_data_out() local
1691 rc = iscsit_get_dataout(conn, cmd, hdr); in iscsit_handle_data_out()
1697 return iscsit_check_dataout_payload(cmd, hdr, data_crc_failed); in iscsit_handle_data_out()
1701 struct iscsi_nopout *hdr) in iscsit_setup_nop_out() argument
1703 u32 payload_length = ntoh24(hdr->dlength); in iscsit_setup_nop_out()
1705 if (!(hdr->flags & ISCSI_FLAG_CMD_FINAL)) { in iscsit_setup_nop_out()
1709 (unsigned char *)hdr); in iscsit_setup_nop_out()
1712 (unsigned char *)hdr); in iscsit_setup_nop_out()
1715 if (hdr->itt == RESERVED_ITT && !(hdr->opcode & ISCSI_OP_IMMEDIATE)) { in iscsit_setup_nop_out()
1720 (unsigned char *)hdr); in iscsit_setup_nop_out()
1723 (unsigned char *)hdr); in iscsit_setup_nop_out()
1733 (unsigned char *)hdr); in iscsit_setup_nop_out()
1736 (unsigned char *)hdr); in iscsit_setup_nop_out()
1741 hdr->itt == RESERVED_ITT ? "Response" : "Request", in iscsit_setup_nop_out()
1742 hdr->itt, hdr->ttt, hdr->cmdsn, hdr->exp_statsn, in iscsit_setup_nop_out()
1751 if (hdr->ttt == cpu_to_be32(0xFFFFFFFF)) { in iscsit_setup_nop_out()
1754 cmd->immediate_cmd = ((hdr->opcode & ISCSI_OP_IMMEDIATE) ? in iscsit_setup_nop_out()
1756 conn->sess->init_task_tag = cmd->init_task_tag = hdr->itt; in iscsit_setup_nop_out()
1758 cmd->cmd_sn = be32_to_cpu(hdr->cmdsn); in iscsit_setup_nop_out()
1759 cmd->exp_stat_sn = be32_to_cpu(hdr->exp_statsn); in iscsit_setup_nop_out()
1768 struct iscsi_nopout *hdr) in iscsit_process_nop_out() argument
1775 if (hdr->itt != RESERVED_ITT) { in iscsit_process_nop_out()
1778 (unsigned char *)hdr); in iscsit_process_nop_out()
1784 iscsit_ack_from_expstatsn(conn, be32_to_cpu(hdr->exp_statsn)); in iscsit_process_nop_out()
1786 if (hdr->opcode & ISCSI_OP_IMMEDIATE) { in iscsit_process_nop_out()
1793 (unsigned char *)hdr, hdr->cmdsn); in iscsit_process_nop_out()
1804 if (hdr->ttt != cpu_to_be32(0xFFFFFFFF)) { in iscsit_process_nop_out()
1805 cmd_p = iscsit_find_cmd_from_ttt(conn, be32_to_cpu(hdr->ttt)); in iscsit_process_nop_out()
1833 struct iscsi_nopout *hdr = (struct iscsi_nopout *)buf; in iscsit_handle_nop_out() local
1835 u32 payload_length = ntoh24(hdr->dlength); in iscsit_handle_nop_out()
1838 ret = iscsit_setup_nop_out(conn, cmd, hdr); in iscsit_handle_nop_out()
1844 if (payload_length && hdr->ttt == cpu_to_be32(0xFFFFFFFF)) { in iscsit_handle_nop_out()
1903 " DataCRC error.\n", hdr->cmdsn); in iscsit_handle_nop_out()
1926 return iscsit_process_nop_out(conn, cmd, hdr); in iscsit_handle_nop_out()
1941 struct iscsi_tm *hdr; in iscsit_handle_task_mgt_cmd() local
1945 hdr = (struct iscsi_tm *) buf; in iscsit_handle_task_mgt_cmd()
1946 hdr->flags &= ~ISCSI_FLAG_CMD_FINAL; in iscsit_handle_task_mgt_cmd()
1947 function = hdr->flags; in iscsit_handle_task_mgt_cmd()
1951 " 0x%08x, CID: %hu\n", hdr->itt, hdr->cmdsn, function, in iscsit_handle_task_mgt_cmd()
1952 hdr->rtt, hdr->refcmdsn, conn->cid); in iscsit_handle_task_mgt_cmd()
1956 hdr->rtt != RESERVED_ITT)) { in iscsit_handle_task_mgt_cmd()
1958 hdr->rtt = RESERVED_ITT; in iscsit_handle_task_mgt_cmd()
1962 !(hdr->opcode & ISCSI_OP_IMMEDIATE)) { in iscsit_handle_task_mgt_cmd()
1970 be32_to_cpu(hdr->refcmdsn) != ISCSI_RESERVED_TAG) in iscsit_handle_task_mgt_cmd()
1971 hdr->refcmdsn = cpu_to_be32(ISCSI_RESERVED_TAG); in iscsit_handle_task_mgt_cmd()
2034 cmd->immediate_cmd = ((hdr->opcode & ISCSI_OP_IMMEDIATE) ? 1 : 0); in iscsit_handle_task_mgt_cmd()
2035 cmd->init_task_tag = hdr->itt; in iscsit_handle_task_mgt_cmd()
2037 cmd->cmd_sn = be32_to_cpu(hdr->cmdsn); in iscsit_handle_task_mgt_cmd()
2038 cmd->exp_stat_sn = be32_to_cpu(hdr->exp_statsn); in iscsit_handle_task_mgt_cmd()
2046 scsilun_to_int(&hdr->lun)); in iscsit_handle_task_mgt_cmd()
2104 if (!(hdr->opcode & ISCSI_OP_IMMEDIATE)) { in iscsit_handle_task_mgt_cmd()
2105 int cmdsn_ret = iscsit_sequence_cmd(conn, cmd, buf, hdr->cmdsn); in iscsit_handle_task_mgt_cmd()
2115 iscsit_ack_from_expstatsn(conn, be32_to_cpu(hdr->exp_statsn)); in iscsit_handle_task_mgt_cmd()
2117 if (out_of_order_cmdsn || !(hdr->opcode & ISCSI_OP_IMMEDIATE)) in iscsit_handle_task_mgt_cmd()
2142 struct iscsi_text *hdr) in iscsit_setup_text_cmd() argument
2144 u32 payload_length = ntoh24(hdr->dlength); in iscsit_setup_text_cmd()
2151 (unsigned char *)hdr); in iscsit_setup_text_cmd()
2154 if (!(hdr->flags & ISCSI_FLAG_CMD_FINAL) || in iscsit_setup_text_cmd()
2155 (hdr->flags & ISCSI_FLAG_TEXT_CONTINUE)) { in iscsit_setup_text_cmd()
2158 (unsigned char *)hdr); in iscsit_setup_text_cmd()
2162 " ExpStatSN: 0x%08x, Length: %u\n", hdr->itt, hdr->cmdsn, in iscsit_setup_text_cmd()
2163 hdr->exp_statsn, payload_length); in iscsit_setup_text_cmd()
2167 cmd->immediate_cmd = ((hdr->opcode & ISCSI_OP_IMMEDIATE) ? 1 : 0); in iscsit_setup_text_cmd()
2168 conn->sess->init_task_tag = cmd->init_task_tag = hdr->itt; in iscsit_setup_text_cmd()
2170 cmd->cmd_sn = be32_to_cpu(hdr->cmdsn); in iscsit_setup_text_cmd()
2171 cmd->exp_stat_sn = be32_to_cpu(hdr->exp_statsn); in iscsit_setup_text_cmd()
2182 struct iscsi_text *hdr) in iscsit_process_text_cmd() argument
2188 cmd->targ_xfer_tag = be32_to_cpu(hdr->ttt); in iscsit_process_text_cmd()
2222 iscsit_ack_from_expstatsn(conn, be32_to_cpu(hdr->exp_statsn)); in iscsit_process_text_cmd()
2224 if (!(hdr->opcode & ISCSI_OP_IMMEDIATE)) { in iscsit_process_text_cmd()
2226 (unsigned char *)hdr, hdr->cmdsn); in iscsit_process_text_cmd()
2237 (unsigned char *)hdr); in iscsit_process_text_cmd()
2245 struct iscsi_text *hdr = (struct iscsi_text *)buf; in iscsit_handle_text_cmd() local
2247 u32 payload_length = ntoh24(hdr->dlength); in iscsit_handle_text_cmd()
2250 rc = iscsit_setup_text_cmd(conn, cmd, hdr); in iscsit_handle_text_cmd()
2313 " DataCRC error.\n", hdr->cmdsn); in iscsit_handle_text_cmd()
2328 return iscsit_process_text_cmd(conn, cmd, hdr); in iscsit_handle_text_cmd()
2449 struct iscsi_logout *hdr; in iscsit_handle_logout_cmd() local
2452 hdr = (struct iscsi_logout *) buf; in iscsit_handle_logout_cmd()
2453 reason_code = (hdr->flags & 0x7f); in iscsit_handle_logout_cmd()
2466 hdr->itt, hdr->cmdsn, hdr->exp_statsn, reason_code, in iscsit_handle_logout_cmd()
2467 hdr->cid, conn->cid); in iscsit_handle_logout_cmd()
2478 cmd->immediate_cmd = ((hdr->opcode & ISCSI_OP_IMMEDIATE) ? 1 : 0); in iscsit_handle_logout_cmd()
2479 conn->sess->init_task_tag = cmd->init_task_tag = hdr->itt; in iscsit_handle_logout_cmd()
2481 cmd->cmd_sn = be32_to_cpu(hdr->cmdsn); in iscsit_handle_logout_cmd()
2482 cmd->exp_stat_sn = be32_to_cpu(hdr->exp_statsn); in iscsit_handle_logout_cmd()
2483 cmd->logout_cid = be16_to_cpu(hdr->cid); in iscsit_handle_logout_cmd()
2493 be16_to_cpu(hdr->cid) == conn->cid)) in iscsit_handle_logout_cmd()
2501 iscsit_ack_from_expstatsn(conn, be32_to_cpu(hdr->exp_statsn)); in iscsit_handle_logout_cmd()
2513 cmdsn_ret = iscsit_sequence_cmd(conn, cmd, buf, hdr->cmdsn); in iscsit_handle_logout_cmd()
2528 struct iscsi_snack *hdr; in iscsit_handle_snack() local
2530 hdr = (struct iscsi_snack *) buf; in iscsit_handle_snack()
2531 hdr->flags &= ~ISCSI_FLAG_CMD_FINAL; in iscsit_handle_snack()
2535 " CID: %hu\n", hdr->itt, hdr->exp_statsn, hdr->flags, in iscsit_handle_snack()
2536 hdr->begrun, hdr->runlength, conn->cid); in iscsit_handle_snack()
2548 switch (hdr->flags & ISCSI_FLAG_SNACK_TYPE_MASK) { in iscsit_handle_snack()
2551 hdr->itt, in iscsit_handle_snack()
2552 be32_to_cpu(hdr->ttt), in iscsit_handle_snack()
2553 be32_to_cpu(hdr->begrun), in iscsit_handle_snack()
2554 be32_to_cpu(hdr->runlength)); in iscsit_handle_snack()
2556 return iscsit_handle_status_snack(conn, hdr->itt, in iscsit_handle_snack()
2557 be32_to_cpu(hdr->ttt), in iscsit_handle_snack()
2558 be32_to_cpu(hdr->begrun), be32_to_cpu(hdr->runlength)); in iscsit_handle_snack()
2560 return iscsit_handle_data_ack(conn, be32_to_cpu(hdr->ttt), in iscsit_handle_snack()
2561 be32_to_cpu(hdr->begrun), in iscsit_handle_snack()
2562 be32_to_cpu(hdr->runlength)); in iscsit_handle_snack()
2570 " error.\n", hdr->flags & 0x0f); in iscsit_handle_snack()
2591 struct iscsi_scsi_req *hdr, in iscsit_handle_immediate_data() argument
2647 (unsigned char *)hdr); in iscsit_handle_immediate_data()
2652 (unsigned char *)hdr); in iscsit_handle_immediate_data()
2722 struct iscsi_async *hdr; in iscsit_send_conn_drop_async_message() local
2726 hdr = (struct iscsi_async *) cmd->pdu; in iscsit_send_conn_drop_async_message()
2727 hdr->opcode = ISCSI_OP_ASYNC_EVENT; in iscsit_send_conn_drop_async_message()
2728 hdr->flags = ISCSI_FLAG_CMD_FINAL; in iscsit_send_conn_drop_async_message()
2731 put_unaligned_be64(0xFFFFFFFFFFFFFFFFULL, &hdr->rsvd4[0]); in iscsit_send_conn_drop_async_message()
2733 hdr->statsn = cpu_to_be32(cmd->stat_sn); in iscsit_send_conn_drop_async_message()
2734 hdr->exp_cmdsn = cpu_to_be32(conn->sess->exp_cmd_sn); in iscsit_send_conn_drop_async_message()
2735 hdr->max_cmdsn = cpu_to_be32((u32) atomic_read(&conn->sess->max_cmd_sn)); in iscsit_send_conn_drop_async_message()
2736 hdr->async_event = ISCSI_ASYNC_MSG_DROPPING_CONNECTION; in iscsit_send_conn_drop_async_message()
2737 hdr->param1 = cpu_to_be16(cmd->logout_cid); in iscsit_send_conn_drop_async_message()
2738 hdr->param2 = cpu_to_be16(conn->sess->sess_ops->DefaultTime2Wait); in iscsit_send_conn_drop_async_message()
2739 hdr->param3 = cpu_to_be16(conn->sess->sess_ops->DefaultTime2Retain); in iscsit_send_conn_drop_async_message()
2760 struct iscsi_datain *datain, struct iscsi_data_rsp *hdr, in iscsit_build_datain_pdu() argument
2763 hdr->opcode = ISCSI_OP_SCSI_DATA_IN; in iscsit_build_datain_pdu()
2764 hdr->flags = datain->flags; in iscsit_build_datain_pdu()
2765 if (hdr->flags & ISCSI_FLAG_DATA_STATUS) { in iscsit_build_datain_pdu()
2767 hdr->flags |= ISCSI_FLAG_DATA_OVERFLOW; in iscsit_build_datain_pdu()
2768 hdr->residual_count = cpu_to_be32(cmd->se_cmd.residual_count); in iscsit_build_datain_pdu()
2770 hdr->flags |= ISCSI_FLAG_DATA_UNDERFLOW; in iscsit_build_datain_pdu()
2771 hdr->residual_count = cpu_to_be32(cmd->se_cmd.residual_count); in iscsit_build_datain_pdu()
2774 hton24(hdr->dlength, datain->length); in iscsit_build_datain_pdu()
2775 if (hdr->flags & ISCSI_FLAG_DATA_ACK) in iscsit_build_datain_pdu()
2777 (struct scsi_lun *)&hdr->lun); in iscsit_build_datain_pdu()
2779 put_unaligned_le64(0xFFFFFFFFFFFFFFFFULL, &hdr->lun); in iscsit_build_datain_pdu()
2781 hdr->itt = cmd->init_task_tag; in iscsit_build_datain_pdu()
2783 if (hdr->flags & ISCSI_FLAG_DATA_ACK) in iscsit_build_datain_pdu()
2784 hdr->ttt = cpu_to_be32(cmd->targ_xfer_tag); in iscsit_build_datain_pdu()
2786 hdr->ttt = cpu_to_be32(0xFFFFFFFF); in iscsit_build_datain_pdu()
2788 hdr->statsn = cpu_to_be32(cmd->stat_sn); in iscsit_build_datain_pdu()
2790 hdr->statsn = cpu_to_be32(0xFFFFFFFF); in iscsit_build_datain_pdu()
2792 hdr->exp_cmdsn = cpu_to_be32(conn->sess->exp_cmd_sn); in iscsit_build_datain_pdu()
2793 hdr->max_cmdsn = cpu_to_be32((u32) atomic_read(&conn->sess->max_cmd_sn)); in iscsit_build_datain_pdu()
2794 hdr->datasn = cpu_to_be32(datain->data_sn); in iscsit_build_datain_pdu()
2795 hdr->offset = cpu_to_be32(datain->offset); in iscsit_build_datain_pdu()
2799 cmd->init_task_tag, ntohl(hdr->statsn), ntohl(hdr->datasn), in iscsit_build_datain_pdu()
2800 ntohl(hdr->offset), datain->length, conn->cid); in iscsit_build_datain_pdu()
2806 struct iscsi_data_rsp *hdr = (struct iscsi_data_rsp *)&cmd->pdu[0]; in iscsit_send_datain() local
2849 iscsit_build_datain_pdu(cmd, conn, &datain, hdr, set_statsn); in iscsit_send_datain()
2866 struct iscsi_logout_rsp *hdr) in iscsit_build_logout_rsp() argument
2939 hdr->opcode = ISCSI_OP_LOGOUT_RSP; in iscsit_build_logout_rsp()
2940 hdr->flags |= ISCSI_FLAG_CMD_FINAL; in iscsit_build_logout_rsp()
2941 hdr->response = cmd->logout_response; in iscsit_build_logout_rsp()
2942 hdr->itt = cmd->init_task_tag; in iscsit_build_logout_rsp()
2944 hdr->statsn = cpu_to_be32(cmd->stat_sn); in iscsit_build_logout_rsp()
2947 hdr->exp_cmdsn = cpu_to_be32(conn->sess->exp_cmd_sn); in iscsit_build_logout_rsp()
2948 hdr->max_cmdsn = cpu_to_be32((u32) atomic_read(&conn->sess->max_cmd_sn)); in iscsit_build_logout_rsp()
2952 cmd->init_task_tag, cmd->stat_sn, hdr->response, in iscsit_build_logout_rsp()
2974 struct iscsi_nopin *hdr, bool nopout_response) in iscsit_build_nopin_rsp() argument
2976 hdr->opcode = ISCSI_OP_NOOP_IN; in iscsit_build_nopin_rsp()
2977 hdr->flags |= ISCSI_FLAG_CMD_FINAL; in iscsit_build_nopin_rsp()
2978 hton24(hdr->dlength, cmd->buf_ptr_size); in iscsit_build_nopin_rsp()
2980 put_unaligned_le64(0xFFFFFFFFFFFFFFFFULL, &hdr->lun); in iscsit_build_nopin_rsp()
2981 hdr->itt = cmd->init_task_tag; in iscsit_build_nopin_rsp()
2982 hdr->ttt = cpu_to_be32(cmd->targ_xfer_tag); in iscsit_build_nopin_rsp()
2985 hdr->statsn = cpu_to_be32(cmd->stat_sn); in iscsit_build_nopin_rsp()
2990 hdr->exp_cmdsn = cpu_to_be32(conn->sess->exp_cmd_sn); in iscsit_build_nopin_rsp()
2991 hdr->max_cmdsn = cpu_to_be32((u32) atomic_read(&conn->sess->max_cmd_sn)); in iscsit_build_nopin_rsp()
3008 struct iscsi_nopin *hdr = (struct iscsi_nopin *)&cmd->pdu[0]; in iscsit_send_unsolicited_nopin() local
3011 iscsit_build_nopin_rsp(cmd, conn, hdr, false); in iscsit_send_unsolicited_nopin()
3014 " 0x%08x CID: %hu\n", hdr->ttt, cmd->stat_sn, conn->cid); in iscsit_send_unsolicited_nopin()
3031 struct iscsi_nopin *hdr = (struct iscsi_nopin *)&cmd->pdu[0]; in iscsit_send_nopin() local
3033 iscsit_build_nopin_rsp(cmd, conn, hdr, true); in iscsit_send_nopin()
3051 struct iscsi_r2t_rsp *hdr; in iscsit_send_r2t() local
3058 hdr = (struct iscsi_r2t_rsp *) cmd->pdu; in iscsit_send_r2t()
3059 memset(hdr, 0, ISCSI_HDR_LEN); in iscsit_send_r2t()
3060 hdr->opcode = ISCSI_OP_R2T; in iscsit_send_r2t()
3061 hdr->flags |= ISCSI_FLAG_CMD_FINAL; in iscsit_send_r2t()
3063 (struct scsi_lun *)&hdr->lun); in iscsit_send_r2t()
3064 hdr->itt = cmd->init_task_tag; in iscsit_send_r2t()
3069 hdr->ttt = cpu_to_be32(r2t->targ_xfer_tag); in iscsit_send_r2t()
3070 hdr->statsn = cpu_to_be32(conn->stat_sn); in iscsit_send_r2t()
3071 hdr->exp_cmdsn = cpu_to_be32(conn->sess->exp_cmd_sn); in iscsit_send_r2t()
3072 hdr->max_cmdsn = cpu_to_be32((u32) atomic_read(&conn->sess->max_cmd_sn)); in iscsit_send_r2t()
3073 hdr->r2tsn = cpu_to_be32(r2t->r2t_sn); in iscsit_send_r2t()
3074 hdr->data_offset = cpu_to_be32(r2t->offset); in iscsit_send_r2t()
3075 hdr->data_length = cpu_to_be32(r2t->xfer_len); in iscsit_send_r2t()
3080 r2t->targ_xfer_tag, ntohl(hdr->statsn), r2t->r2t_sn, in iscsit_send_r2t()
3182 bool inc_stat_sn, struct iscsi_scsi_rsp *hdr) in iscsit_build_rsp_pdu() argument
3189 memset(hdr, 0, ISCSI_HDR_LEN); in iscsit_build_rsp_pdu()
3190 hdr->opcode = ISCSI_OP_SCSI_CMD_RSP; in iscsit_build_rsp_pdu()
3191 hdr->flags |= ISCSI_FLAG_CMD_FINAL; in iscsit_build_rsp_pdu()
3193 hdr->flags |= ISCSI_FLAG_CMD_OVERFLOW; in iscsit_build_rsp_pdu()
3194 hdr->residual_count = cpu_to_be32(cmd->se_cmd.residual_count); in iscsit_build_rsp_pdu()
3196 hdr->flags |= ISCSI_FLAG_CMD_UNDERFLOW; in iscsit_build_rsp_pdu()
3197 hdr->residual_count = cpu_to_be32(cmd->se_cmd.residual_count); in iscsit_build_rsp_pdu()
3199 hdr->response = cmd->iscsi_response; in iscsit_build_rsp_pdu()
3200 hdr->cmd_status = cmd->se_cmd.scsi_status; in iscsit_build_rsp_pdu()
3201 hdr->itt = cmd->init_task_tag; in iscsit_build_rsp_pdu()
3202 hdr->statsn = cpu_to_be32(cmd->stat_sn); in iscsit_build_rsp_pdu()
3205 hdr->exp_cmdsn = cpu_to_be32(conn->sess->exp_cmd_sn); in iscsit_build_rsp_pdu()
3206 hdr->max_cmdsn = cpu_to_be32((u32) atomic_read(&conn->sess->max_cmd_sn)); in iscsit_build_rsp_pdu()
3217 struct iscsi_scsi_rsp *hdr = (struct iscsi_scsi_rsp *)&cmd->pdu[0]; in iscsit_send_response() local
3222 iscsit_build_rsp_pdu(cmd, conn, inc_stat_sn, hdr); in iscsit_send_response()
3234 hton24(hdr->dlength, (u32)cmd->se_cmd.scsi_sense_length); in iscsit_send_response()
3273 struct iscsi_tm_rsp *hdr) in iscsit_build_task_mgt_rsp() argument
3277 hdr->opcode = ISCSI_OP_SCSI_TMFUNC_RSP; in iscsit_build_task_mgt_rsp()
3278 hdr->flags = ISCSI_FLAG_CMD_FINAL; in iscsit_build_task_mgt_rsp()
3279 hdr->response = iscsit_convert_tcm_tmr_rsp(se_tmr); in iscsit_build_task_mgt_rsp()
3280 hdr->itt = cmd->init_task_tag; in iscsit_build_task_mgt_rsp()
3282 hdr->statsn = cpu_to_be32(cmd->stat_sn); in iscsit_build_task_mgt_rsp()
3285 hdr->exp_cmdsn = cpu_to_be32(conn->sess->exp_cmd_sn); in iscsit_build_task_mgt_rsp()
3286 hdr->max_cmdsn = cpu_to_be32((u32) atomic_read(&conn->sess->max_cmd_sn)); in iscsit_build_task_mgt_rsp()
3290 cmd->init_task_tag, cmd->stat_sn, hdr->response, conn->cid); in iscsit_build_task_mgt_rsp()
3297 struct iscsi_tm_rsp *hdr = (struct iscsi_tm_rsp *)&cmd->pdu[0]; in iscsit_send_task_mgt_rsp() local
3299 iscsit_build_task_mgt_rsp(cmd, conn, hdr); in iscsit_send_task_mgt_rsp()
3485 struct iscsi_text_rsp *hdr, in iscsit_build_text_rsp() argument
3498 hdr->flags |= ISCSI_FLAG_CMD_FINAL; in iscsit_build_text_rsp()
3500 hdr->flags |= ISCSI_FLAG_TEXT_CONTINUE; in iscsit_build_text_rsp()
3505 hdr->opcode = ISCSI_OP_TEXT_RSP; in iscsit_build_text_rsp()
3507 hton24(hdr->dlength, text_length); in iscsit_build_text_rsp()
3508 hdr->itt = cmd->init_task_tag; in iscsit_build_text_rsp()
3509 hdr->ttt = cpu_to_be32(cmd->targ_xfer_tag); in iscsit_build_text_rsp()
3511 hdr->statsn = cpu_to_be32(cmd->stat_sn); in iscsit_build_text_rsp()
3520 hdr->exp_cmdsn = cpu_to_be32(conn->sess->exp_cmd_sn); in iscsit_build_text_rsp()
3521 hdr->max_cmdsn = cpu_to_be32((u32) atomic_read(&conn->sess->max_cmd_sn)); in iscsit_build_text_rsp()
3526 !!(hdr->flags & ISCSI_FLAG_CMD_FINAL), in iscsit_build_text_rsp()
3527 !!(hdr->flags & ISCSI_FLAG_TEXT_CONTINUE)); in iscsit_build_text_rsp()
3537 struct iscsi_text_rsp *hdr = (struct iscsi_text_rsp *)cmd->pdu; in iscsit_send_text_rsp() local
3540 text_length = iscsit_build_text_rsp(cmd, conn, hdr, in iscsit_send_text_rsp()
3552 struct iscsi_reject *hdr) in iscsit_build_reject() argument
3554 hdr->opcode = ISCSI_OP_REJECT; in iscsit_build_reject()
3555 hdr->reason = cmd->reject_reason; in iscsit_build_reject()
3556 hdr->flags |= ISCSI_FLAG_CMD_FINAL; in iscsit_build_reject()
3557 hton24(hdr->dlength, ISCSI_HDR_LEN); in iscsit_build_reject()
3558 hdr->ffffffff = cpu_to_be32(0xffffffff); in iscsit_build_reject()
3560 hdr->statsn = cpu_to_be32(cmd->stat_sn); in iscsit_build_reject()
3561 hdr->exp_cmdsn = cpu_to_be32(conn->sess->exp_cmd_sn); in iscsit_build_reject()
3562 hdr->max_cmdsn = cpu_to_be32((u32) atomic_read(&conn->sess->max_cmd_sn)); in iscsit_build_reject()
3571 struct iscsi_reject *hdr = (struct iscsi_reject *)&cmd->pdu[0]; in iscsit_send_reject() local
3573 iscsit_build_reject(cmd, conn, hdr); in iscsit_send_reject()
3576 " CID: %hu\n", ntohl(hdr->statsn), hdr->reason, conn->cid); in iscsit_send_reject()
3863 struct iscsi_hdr *hdr = (struct iscsi_hdr *)buf; in iscsi_target_rx_opcode() local
3867 switch (hdr->opcode & ISCSI_OPCODE_MASK) { in iscsi_target_rx_opcode()
3880 if (hdr->ttt == cpu_to_be32(0xFFFFFFFF)) { in iscsi_target_rx_opcode()
3895 if (hdr->ttt != cpu_to_be32(0xFFFFFFFF)) { in iscsi_target_rx_opcode()
3896 cmd = iscsit_find_cmd_from_itt(conn, hdr->itt); in iscsi_target_rx_opcode()
3921 pr_err("Got unknown iSCSI OpCode: 0x%02x\n", hdr->opcode); in iscsi_target_rx_opcode()