mirror of
https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git
synced 2024-10-04 08:08:54 +00:00
scsi: smartpqi: Fix boot failure during LUN rebuild
Move the delay in the register polling loop to the beginning of the loop to ensure there is always a delay between writing the register and reading it. Link: https://lore.kernel.org/r/20210928235442.201875-9-don.brace@microchip.com Reviewed-by: Scott Benesh <scott.benesh@microchip.com> Reviewed-by: Scott Teel <scott.teel@microchip.com> Acked-by: John Donnelly <john.p.donnelly@oracle.com> Signed-off-by: Mike McGowen <Mike.McGowen@microchip.com> Signed-off-by: Don Brace <don.brace@microchip.com> Signed-off-by: Martin K. Petersen <martin.petersen@oracle.com>
This commit is contained in:
parent
28ca6d876c
commit
987d35605b
1 changed files with 1 additions and 1 deletions
|
@ -4278,12 +4278,12 @@ static int pqi_create_admin_queues(struct pqi_ctrl_info *ctrl_info)
|
|||
|
||||
timeout = PQI_ADMIN_QUEUE_CREATE_TIMEOUT_JIFFIES + jiffies;
|
||||
while (1) {
|
||||
msleep(PQI_ADMIN_QUEUE_CREATE_POLL_INTERVAL_MSECS);
|
||||
status = readb(&pqi_registers->function_and_status_code);
|
||||
if (status == PQI_STATUS_IDLE)
|
||||
break;
|
||||
if (time_after(jiffies, timeout))
|
||||
return -ETIMEDOUT;
|
||||
msleep(PQI_ADMIN_QUEUE_CREATE_POLL_INTERVAL_MSECS);
|
||||
}
|
||||
|
||||
/*
|
||||
|
|
Loading…
Reference in a new issue