Re: If abort request comes in for command not known to LLD?

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

 



On Fri, Mar 02, 2012 at 03:10:02PM -0600, Mike Christie wrote:
> On 03/02/2012 09:44 AM, scameron@xxxxxxxxxxxxxxxxxx wrote:
> > 
> > What should the LLD do if an abort request comes into the
> > abort error handler from the midlayer for a command which is
> > not known to the LLD?
> > 
> > I see aic7xxx_osm.c handles it in this way in ahc_linux_queue_recovery_cmd():
> > 
> > no_cmd:
> >         /*
> >          * Our assumption is that if we don't have the command, no
> >          * recovery action was required, so we return success.  Again,
> >          * the semantics of the mid-layer recovery engine are not
> >          * well defined, so this may change in time.
> >          */
> >         retval = SUCCESS;
> > 
> > Is that the right thing to do?  Seems a bit weird, but if that's
> > the right thing to do, I can do that too.
> > 
> 
> How do you hit this case?

I'm not quite sure.  I haven't hit it, but have a report of it on RHEL5u5
with XFS filesystem under heavy load.  As a guess, I'd say a race between
driver completing the command and a timeout in the mid layer.  In any
case, it'd be nice to know what the kernel expects a driver to do if
it should encounter that situation.

> 
> I think it is ok. The reasons I have seen drivers hit it this is that
> race where the driver is completing a command while the timer code is
> starting to go off, or the cmd has timed out then the driver completes
> the command before the abort code is run.
> 
> In those cases the driver has cleaned up its internal accounting because
> the command has completed. At that point there is not much it can do
> even if it wanted to. It does not have away to look up things like
> internal tags/ids for the command.

Right, but it just seems weird for the driver to effectively say, "Sure,
I aborted that command", when it did no such thing.  If the driver tells
the kernel that a write got aborted when really it was completed, that
seems like it could be kind of bad.

-- steve

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


[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