[SCSI] mpt2sas : running out of message frames
The driver is not freeing message frame when returning failure from _ctl_do_task_abort. If you call this function 500 times when its unable to find an active task mid, you end up with no message frames. Signed-off-by: Eric Moore <eric.moore@lsi.com> Signed-off-by: James Bottomley <James.Bottomley@HansenPartnership.com>
This commit is contained in:
parent
0d04df9b4a
commit
77bdd9ee1e
|
@ -714,8 +714,10 @@ _ctl_do_mpt_command(struct MPT2SAS_ADAPTER *ioc,
|
||||||
|
|
||||||
if (tm_request->TaskType ==
|
if (tm_request->TaskType ==
|
||||||
MPI2_SCSITASKMGMT_TASKTYPE_ABORT_TASK) {
|
MPI2_SCSITASKMGMT_TASKTYPE_ABORT_TASK) {
|
||||||
if (_ctl_do_task_abort(ioc, &karg, tm_request))
|
if (_ctl_do_task_abort(ioc, &karg, tm_request)) {
|
||||||
|
mpt2sas_base_free_smid(ioc, smid);
|
||||||
goto out;
|
goto out;
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
mutex_lock(&ioc->tm_cmds.mutex);
|
mutex_lock(&ioc->tm_cmds.mutex);
|
||||||
|
|
Loading…
Reference in a new issue