Fix iSCSI initiator crash that could happen with out-of-memory

conditions with in-flight IO and subsequent reconnection.

PR:		199117
MFC after:	1 month
Sponsored by:	The FreeBSD Foundation
Differential Revision:	https://reviews.freebsd.org/D5673
This commit is contained in:
Edward Tomasz Napierala 2016-03-25 16:01:40 +00:00
parent e7e6b1ebc8
commit 938bcb04fc

View File

@ -2222,6 +2222,7 @@ iscsi_action_scsiio(struct iscsi_session *is, union ccb *ccb)
error = icl_pdu_append_data(request, csio->data_ptr, len, M_NOWAIT);
if (error != 0) {
iscsi_outstanding_remove(is, io);
icl_pdu_free(request);
if ((ccb->ccb_h.status & CAM_DEV_QFRZN) == 0) {
xpt_freeze_devq(ccb->ccb_h.path, 1);