[<prev] [next>] [<thread-prev] [day] [month] [year] [list]
Message-ID: <1290010206.4736.47.camel@mulgrave.site>
Date: Wed, 17 Nov 2010 10:10:06 -0600
From: James Bottomley <James.Bottomley@...e.de>
To: Mike Anderson <andmike@...ux.vnet.ibm.com>
Cc: "Nicholas A. Bellinger" <nab@...ux-iscsi.org>,
linux-scsi <linux-scsi@...r.kernel.org>,
linux-kernel <linux-kernel@...r.kernel.org>,
Jeff Garzik <jeff@...zik.org>, Christoph Hellwig <hch@....de>
Subject: Re: [PATCH] scsi: Convert scsi_host->cmd_serial_number to odd
numbered atomic_t counter
On Thu, 2010-11-11 at 14:36 -0800, Mike Anderson wrote:
> James Bottomley <James.Bottomley@...e.de> wrote:
> > On Thu, 2010-11-11 at 13:37 -0800, Nicholas A. Bellinger wrote:
> > >
> > > ..snip..
> > >
> > > Sounds good to me, but you will recall the last attempt to make
> > > scsi_cmd_get_serial() optional for the special case LLDs, that we
> > > started running quickly in the legacy usage of cmd->serial_number in
> > > scsi_softirq_done() and the side effects in scsi_try_to_abort_cmd(), who
> > > use is complex enough that we have not found a proper resolution
> > > sufficent to andmike discussed here:
> >
> > Yes, that's what I meant by "eliminate the overloading of the serial
> > number zero value" above. This needs fixing before the serial number
> > can be dumped for fast hba drivers.
> >
>
> In the last email referenced below I believed that since
> scsi_softirq_done is calling scsi_eh_scmd_add without the
> SCSI_EH_CANCEL_CMD flag set this will stop scsi_try_to_abort_cmd from
> being called. Since scsi_softirq_done is the one setting serial_number
> to 0 I do not believe we can hit the serial number == 0 check in
> scsi_try_to_abort_cmd anymore.
>
> > > http://marc.info/?l=linux-scsi&m=128820726325009&w=2
I buy this. The REQ_ATOM_COMPLETE flag in the block layer now mediates
timer vs completion atomically ... so either one or the other is allowed
to occur.
James
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@...r.kernel.org
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/
Powered by blists - more mailing lists