Re: [stable-4.19 1/2] scsi: pm80xx: panic on ncq error cleaning up the read log.

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

 



On Mon, Mar 09, 2020 at 11:17:38AM +0100, Jack Wang wrote:
> From: Viswas G <Viswas.G@xxxxxxxxxxxxx>
> 
> commit 0b6df110b3d0c12562011fcd032cfb6ff16b6d56 upstream
> 
> when there's an error in 'ncq mode' the host has to read the ncq error
> log (10h) to clear the error state. however, the ccb that is setup for
> doing this doesn't setup the ccb so that the previous state is
> cleared. if the ccb was previously used for an IO n_elems is set and
> pm8001_ccb_task_free() treats this as the signal to go free a
> scatter-gather list (that's already been freed).
> 
> Signed-off-by: Deepak Ukey <deepak.ukey@xxxxxxxxxxxxx>
> Signed-off-by: Viswas G <Viswas.G@xxxxxxxxxxxxx>
> Acked-by: Jack Wang <jinpu.wang@xxxxxxxxxxxxxxxx>
> Signed-off-by: Martin K. Petersen <martin.petersen@xxxxxxxxxx>
> ---
>  drivers/scsi/pm8001/pm80xx_hwi.c | 5 +++--
>  1 file changed, 3 insertions(+), 2 deletions(-)
> 
> diff --git a/drivers/scsi/pm8001/pm80xx_hwi.c b/drivers/scsi/pm8001/pm80xx_hwi.c
> index 8627feb80261..bd945d832eb8 100644
> --- a/drivers/scsi/pm8001/pm80xx_hwi.c
> +++ b/drivers/scsi/pm8001/pm80xx_hwi.c
> @@ -1500,8 +1500,9 @@ static void pm80xx_send_read_log(struct pm8001_hba_info *pm8001_ha,
>  	ccb->ccb_tag = ccb_tag;
>  	ccb->task = task;
>  	ccb->n_elem = 0;
> -	pm8001_ha_dev->id |= NCQ_READ_LOG_FLAG;
> -	pm8001_ha_dev->id |= NCQ_2ND_RLE_FLAG;
> +	pm8001_ha_dev->id |= NCQ_READ_LOG_FLAG;	// set this flag to indicate read log
> +	pm8001_ha_dev->id |= NCQ_2ND_RLE_FLAG;	// set this flag to guard against 2nd RLE. Workaround 
> +						// till FW fix is available. 

Also, this isn't even the commit id referenced above :(

And there is trailing whitespace :(



[Index of Archives]     [Linux Kernel]     [Kernel Development Newbies]     [Linux USB Devel]     [Video for Linux]     [Linux Audio Users]     [Yosemite Hiking]     [Linux Kernel]     [Linux SCSI]

  Powered by Linux