Re: virtio-scsi issues duplicate tags when async_abort is enabled

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

 



On Fri, 2014-06-13 at 19:50 -0700, Venkatesh Srinivas wrote:
> On 6/13/14, James Bottomley <James.Bottomley@xxxxxxxxxxxxxxxxxxxxx> wrote:
> ...
> > OK, I've no idea what's in distro kernels, so you're looking for this
> > fix:
> >
> > commit d555a2abf3481f81303d835046a5ec2c4fb3ca8e
> > Author: James Bottomley <JBottomley@xxxxxxxxxxxxx>
> > Date:   Fri Mar 28 10:50:17 2014 -0700
> >
> >     [SCSI] Fix spurious request sense in error handling
> >
> > It went into v3.15-rc3.  It looks like it wasn't backported to stable.
> 
> Backporting this fix to 3.14 appears to resolve this problem. Thank you!

OK, I've sent the patch in to Stable.

> 0) I don't understand how a command would be re-issued while its
> original is inflight without this patch. If we send down a spurious
> REQUESE SENSE and get NO SENSE, scsi_decide_disposition() in
> scsi_eh_get_sense() will return FAILED and not resubmit the command.
> Do you know the trace that results in the duplicate command being sent
> down?

The original is still at the LLD while we reuse the scsi_command to send
the request sense.  We can easily get double completions from that if
the original happens to come back.  It violates one of the requirements
of error handling: we may not reuse the command until we've forced the
LLD to relinquish it.

> 1) virtio-scsi uses the address of the scsi_cmnd as a tag; if
> scsi_eh_get_sense() is invoked for a timed-out command before the
> command returned, the REQUEST SENSE task from scsi_send_eh_cmnd() will
> have the same tag as the unreturned prior task. Scary.
> 
> 2) We would like to see this patch sent to the stable kernel tree; do
> you plan to send it out to stable@? Are there any further tests you
> plan to run on that particular fix before sending it that way?

It's already gone to stable.

James


--
To unsubscribe from this list: send the line "unsubscribe stable" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at  http://vger.kernel.org/majordomo-info.html




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