Re: [PATCH 03/29] scsi: aacraid: Fix hang in kdump

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



On 12/21/2017 03:33 PM, Raghava Aditya Renukunta wrote:
> Driver attempts to perform a device scan and device add after coming out
> of reset. At times when the kdump kernel loads and it tries to perform
> eh recovery, the device scan hangs since its commands are blocked because
> of the eh recovery. This should have shown up in normal eh recovery path
> (Should have been obvious)
> 
> Remove the code that performs scanning.I can live without the rescanning
> support in the stable kernels but a hanging kdump/eh recovery needs to be
> fixed.
> 
> Fixes: a2d0321dd532901e (scsi: aacraid: Reload offlined drives after controller reset)
> Cc: <stable@xxxxxxxxxxxxxxx>
> Reported-by: Guilherme G. Piccoli <gpiccoli@xxxxxxxxxxxxxxxxxx>

(Sorry in advance for flooding the thread heheh)
I guess it'd be more appropriate to:

Reported-by: Douglas Miller <dougmill@xxxxxxxxxxxxxxxxxx>

Although I've tested it, Doug isolated the race condition based on code
analysis...

Thanks,


Guilherme

> Tested-by: Guilherme G. Piccoli <gpiccoli@xxxxxxxxxxxxxxxxxx>
> Fixes: a2d0321dd532901e (scsi: aacraid: Reload offlined drives after controller reset)
> Signed-off-by: Raghava Aditya Renukunta <RaghavaAditya.Renukunta@xxxxxxxxxxxxx>
> ---
>  drivers/scsi/aacraid/commsup.c | 9 +--------
>  1 file changed, 1 insertion(+), 8 deletions(-)
> 
> diff --git a/drivers/scsi/aacraid/commsup.c b/drivers/scsi/aacraid/commsup.c
> index 525a652..ffbfd04 100644
> --- a/drivers/scsi/aacraid/commsup.c
> +++ b/drivers/scsi/aacraid/commsup.c
> @@ -1672,14 +1672,7 @@ static int _aac_reset_adapter(struct aac_dev *aac, int forced, u8 reset_type)
>  out:
>  	aac->in_reset = 0;
>  	scsi_unblock_requests(host);
> -	/*
> -	 * Issue bus rescan to catch any configuration that might have
> -	 * occurred
> -	 */
> -	if (!retval) {
> -		dev_info(&aac->pdev->dev, "Issuing bus rescan\n");
> -		scsi_scan_host(host);
> -	}
> +
>  	if (jafo) {
>  		spin_lock_irq(host->host_lock);
>  	}
> 




[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[Index of Archives]     [SCSI Target Devel]     [Linux SCSI Target Infrastructure]     [Kernel Newbies]     [IDE]     [Security]     [Git]     [Netfilter]     [Bugtraq]     [Yosemite News]     [MIPS Linux]     [ARM Linux]     [Linux Security]     [Linux RAID]     [Linux ATA RAID]     [Linux IIO]     [Samba]     [Device Mapper]

  Powered by Linux