Re: [smartpqi updates PATCH V2 08/11] smartpqi: fix boot failure during lun rebuild

john.p.donnelly
2021-09-30T18:24:36Z

On 9/28/21 6:54 PM, Don Brace wrote:
> From: Mike McGowen <Mike.McGowen@microchip.com>
>
> 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.
>
> Reviewed-by: Scott Benesh <scott.benesh@microchip.com>
> Reviewed-by: Scott Teel <scott.teel@microchip.com>
> Signed-off-by: Mike McGowen <Mike.McGowen@microchip.com>
> Signed-off-by: Don Brace <don.brace@microchip.com>

Acked-by: John Donnelly <john.p.donnelly@oracle.com>

> ---
> drivers/scsi/smartpqi/smartpqi_init.c | 2 +-
> 1 file changed, 1 insertion(+), 1 deletion(-)
>
> diff --git a/drivers/scsi/smartpqi/smartpqi_init.c b/drivers/scsi/smartpqi/smartpqi_init.c
> index 1e27e6ba0159..c28eb7ea4a24 100644
> --- a/drivers/scsi/smartpqi/smartpqi_init.c
> +++ b/drivers/scsi/smartpqi/smartpqi_init.c
> @@ -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);
> }
>
> /*
>