mirror of
https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git
synced 2024-10-03 23:58:05 +00:00
scsi: megaraid_sas: Call megasas_complete_cmd_dpc_fusion every 1 second while there are pending commands
megasas_wait_for_outstanding_fusion checks for pending commands every 1 second. But megasas_complete_cmd_dpc_fusion is only called every 5 seconds. If the commands are already completed by firmware, there is an additional delay of 5 seconds before driver will process completion for these commands. Signed-off-by: Kashyap Desai <kashyap.desai@broadcom.com> Signed-off-by: Shivasharan S <shivasharan.srikanteshwara@broadcom.com> Reviewed-by: Tomas Henzl <thenzl@redhat.com> Signed-off-by: Martin K. Petersen <martin.petersen@oracle.com>
This commit is contained in:
parent
bdb5c55fff
commit
14298cf320
1 changed files with 1 additions and 2 deletions
|
@ -3558,6 +3558,7 @@ int megasas_wait_for_outstanding_fusion(struct megasas_instance *instance,
|
|||
}
|
||||
}
|
||||
|
||||
megasas_complete_cmd_dpc_fusion((unsigned long)instance);
|
||||
outstanding = atomic_read(&instance->fw_outstanding);
|
||||
if (!outstanding)
|
||||
goto out;
|
||||
|
@ -3566,8 +3567,6 @@ int megasas_wait_for_outstanding_fusion(struct megasas_instance *instance,
|
|||
dev_notice(&instance->pdev->dev, "[%2d]waiting for %d "
|
||||
"commands to complete for scsi%d\n", i,
|
||||
outstanding, instance->host->host_no);
|
||||
megasas_complete_cmd_dpc_fusion(
|
||||
(unsigned long)instance);
|
||||
}
|
||||
msleep(1000);
|
||||
}
|
||||
|
|
Loading…
Reference in a new issue