On Mon, Apr 25, 2016 at 11:32:26PM -0700, Raghava Aditya Renukunta wrote:
> Currently driver completes double completed or spurious interrupted fibs.
> This is not necessary and causes the SCSI mid layer to issue aborts and
> resets, since completing a fib prematurely might trigger a race condition
> resulting in the driver not calling the scsi_done callback.
>
> Fixed by removing the call to fib complete.
>
> Signed-off-by: Raghava Aditya Renukunta
> <[email protected]>
> ---
> drivers/scsi/aacraid/dpcsup.c | 7 ++++---
> 1 file changed, 4 insertions(+), 3 deletions(-)
>
> diff --git a/drivers/scsi/aacraid/dpcsup.c b/drivers/scsi/aacraid/dpcsup.c
> index d677b52..7e83620 100644
> --- a/drivers/scsi/aacraid/dpcsup.c
> +++ b/drivers/scsi/aacraid/dpcsup.c
> @@ -392,9 +392,10 @@ unsigned int aac_intr_normal(struct aac_dev *dev, u32
> index,
> if (likely(fib->callback && fib->callback_data)) {
> fib->flags &= FIB_CONTEXT_FLAG_FASTRESP;
> fib->callback(fib->callback_data, fib);
> - } else {
> - aac_fib_complete(fib);
> - }
> + } else
> + dev_info(&dev->pdev->dev,
> + "Invalid callback_fib[%d] (*%p)(%p)\n",
> + index, fib->callback, fib->callback_data);
I'm not sure INFO is the right logging level for this. WARN or ERROR might be
more suited.
> } else {
> unsigned long flagv;
> dprintk((KERN_INFO "event_wait up\n"));
>
> --
> To unsubscribe from this list: send the line "unsubscribe linux-scsi" in
> the body of a message to [email protected]
> More majordomo info at http://vger.kernel.org/majordomo-info.html
--
Johannes Thumshirn Storage
[email protected] +49 911 74053 689
SUSE LINUX GmbH, Maxfeldstr. 5, 90409 Nürnberg
GF: Felix Imendörffer, Jane Smithard, Graham Norton
HRB 21284 (AG Nürnberg)
Key fingerprint = EC38 9CAB C2C4 F25D 8600 D0D0 0393 969D 2D76 0850
--
To unsubscribe from this list: send the line "unsubscribe linux-scsi" in
the body of a message to [email protected]
More majordomo info at http://vger.kernel.org/majordomo-info.html