Lines Matching refs:io

179 		    struct iscsi_outstanding *io);
294 struct iscsi_outstanding *io, cam_status status)
299 if (io->io_ccb != NULL) {
300 io->io_ccb->ccb_h.status &= ~(CAM_SIM_QUEUED | CAM_STATUS_MASK);
301 io->io_ccb->ccb_h.status |= status;
302 if ((io->io_ccb->ccb_h.status & CAM_DEV_QFRZN) == 0) {
303 io->io_ccb->ccb_h.status |= CAM_DEV_QFRZN;
304 xpt_freeze_devq(io->io_ccb->ccb_h.path, 1);
307 xpt_done(io->io_ccb);
309 iscsi_outstanding_remove(is, io);
315 struct iscsi_outstanding *io, *tmp;
319 TAILQ_FOREACH_SAFE(io, &is->is_outstanding, io_next, tmp) {
320 iscsi_session_terminate_task(is, io, status);
873 struct iscsi_outstanding *io;
884 io = iscsi_outstanding_find(is, bhssr->bhssr_initiator_task_tag);
885 if (io == NULL || io->io_ccb == NULL) {
893 ccb = io->io_ccb;
902 io->io_received = ccb->csio.dxfer_len - resid;
906 io->io_received = ccb->csio.dxfer_len;
910 received = io->io_received;
911 iscsi_outstanding_remove(is, io);
1000 struct iscsi_outstanding *io, *aio;
1006 io = iscsi_outstanding_find(is, bhstmr->bhstmr_initiator_task_tag);
1007 if (io == NULL || io->io_ccb != NULL) {
1019 aio = iscsi_outstanding_find(is, io->io_datasn);
1024 iscsi_outstanding_remove(is, io);
1032 struct iscsi_outstanding *io;
1040 io = iscsi_outstanding_find(is, bhsdi->bhsdi_initiator_task_tag);
1041 if (io == NULL || io->io_ccb == NULL) {
1066 if (ntohl(bhsdi->bhsdi_buffer_offset) != io->io_received) {
1068 io->io_received, (size_t)ntohl(bhsdi->bhsdi_buffer_offset));
1075 ccb = io->io_ccb;
1078 if (io->io_received + data_segment_len > csio->dxfer_len) {
1081 data_segment_len, io->io_received, csio->dxfer_len);
1088 oreceived = io->io_received;
1089 io->io_received += data_segment_len;
1090 received = io->io_received;
1092 iscsi_outstanding_remove(is, io);
1154 struct iscsi_outstanding *io;
1162 io = iscsi_outstanding_find(is, bhsr2t->bhsr2t_initiator_task_tag);
1163 if (io == NULL || io->io_ccb == NULL) {
1171 csio = &io->io_ccb->csio;
1184 io->io_datasn = 0;
1235 bhsdo->bhsdo_datasn = htonl(io->io_datasn++);
2067 struct iscsi_outstanding *io;
2071 TAILQ_FOREACH(io, &is->is_outstanding, io_next) {
2072 if (io->io_initiator_task_tag == initiator_task_tag)
2073 return (io);
2081 struct iscsi_outstanding *io;
2085 TAILQ_FOREACH(io, &is->is_outstanding, io_next) {
2086 if (io->io_ccb == ccb)
2087 return (io);
2096 struct iscsi_outstanding *io;
2101 io = uma_zalloc(iscsi_outstanding_zone, M_NOWAIT | M_ZERO);
2102 if (io == NULL) {
2104 sizeof(*io));
2109 initiator_task_tagp, &io->io_icl_prv);
2113 uma_zfree(iscsi_outstanding_zone, io);
2120 io->io_initiator_task_tag = *initiator_task_tagp;
2121 io->io_ccb = ccb;
2122 TAILQ_INSERT_TAIL(&is->is_outstanding, io, io_next);
2123 return (io);
2127 iscsi_outstanding_remove(struct iscsi_session *is, struct iscsi_outstanding *io)
2132 icl_conn_task_done(is->is_conn, io->io_icl_prv);
2133 TAILQ_REMOVE(&is->is_outstanding, io, io_next);
2134 uma_zfree(iscsi_outstanding_zone, io);
2143 struct iscsi_outstanding *io, *aio;
2174 io = iscsi_outstanding_add(is, request, NULL, &initiator_task_tag);
2175 if (io == NULL) {
2181 io->io_datasn = aio->io_initiator_task_tag;
2199 struct iscsi_outstanding *io;
2233 io = iscsi_outstanding_add(is, request, ccb, &initiator_task_tag);
2234 if (io == NULL) {
2303 iscsi_outstanding_remove(is, io);