From: Jeff Garzik <jeff@garzik.org>
To: James Bottomley <James.Bottomley@SteelEye.com>
Cc: SCSI Mailing List <linux-scsi@vger.kernel.org>,
"linux-ide@vger.kernel.org" <linux-ide@vger.kernel.org>,
Tejun Heo <htejun@gmail.com>, Andrew Morton <akpm@osdl.org>,
Linus Torvalds <torvalds@osdl.org>
Subject: Re: [Fwd: [RFT] major libata update]
Date: Tue, 16 May 2006 11:41:38 -0400 [thread overview]
Message-ID: <4469F2B2.703@garzik.org> (raw)
In-Reply-To: <1147789098.3505.19.camel@mulgrave.il.steeleye.com>
(CC's restored)
James Bottomley wrote:
> 1) your host_eh_scheduled logic looks wrong. It seems to me that you
> can miss the wakeup if the host is busy? I also don't see a need to
I can't see a case _in libata operation_ where a set of circumstances
arises that causes missed wakeups, can you elaborate?
> move the prototype out of scsi_priv.h ... it should only be used by
> transport classes, anyway.
We're talking about all ->eh_strategy_handler() users, which is a valid
EH API for an LLDD to choose. Granted libata is really the only one
right now.
Long term, ->eh_strategy_handler and transport classes are block layer
not SCSI level anyway, so scsi_priv.h is clearly inappropriate.
> 2) This scsi_req_abort_cmd() is fundamentally the wrong logic.
> Everything else is communicated back as a result code from the command
> in done(). This should be no different ... A status return of
> DID_FAILED which scsi_decide_disposition() always translates to FAILED
> would seem to do exactly what you want without all the overhead.
Inigo sez[1]: I do not think "fundamentally wrong" means what you think
it means.
You miss the fact that the timer may have already fired, in which
completing a command gets you...... not a damned thing. scsi_done()
will simply return, if the timeout has fired. This has always been an
annoying problem to work around.
scsi_req_abort_cmd() may perhaps be misnamed, but it GUARANTEES a set of
operations which libata EH wants. Certainly, if we can guarantee this
set of conditions another way, we are open to any alternate path.
Jeff
[1] from one of my favorite movies. search
http://us.imdb.com/title/tt0093779/quotes for "INCONCEIVABLE"
next prev parent reply other threads:[~2006-05-16 15:41 UTC|newest]
Thread overview: 59+ messages / expand[flat|nested] mbox.gz Atom feed top
2006-05-15 17:08 [Fwd: [RFT] major libata update] Jeff Garzik
2006-05-16 14:18 ` James Bottomley
2006-05-16 15:41 ` Jeff Garzik [this message]
2006-05-16 15:51 ` James Bottomley
2006-05-16 16:06 ` Jeff Garzik
2006-05-16 16:30 ` James Bottomley
2006-05-16 16:39 ` Jeff Garzik
2006-05-16 21:55 ` Luben Tuikov
2006-05-16 21:32 ` Luben Tuikov
2006-05-16 16:08 ` Tejun Heo
2006-05-16 16:13 ` Tejun Heo
2006-05-16 16:29 ` James Bottomley
2006-05-16 16:37 ` Jeff Garzik
2006-05-16 16:39 ` Tejun Heo
2006-05-16 16:50 ` James Bottomley
2006-05-16 17:07 ` Tejun Heo
2006-05-16 17:09 ` Jeff Garzik
2006-05-16 19:58 ` Christoph Hellwig
2006-05-16 20:02 ` Jeff Garzik
2006-05-16 21:28 ` James Bottomley
2006-05-18 3:27 ` Tejun Heo
2006-05-19 12:07 ` [PATCH] SCSI: make scsi_implement_eh() generic API for SCSI transports Tejun Heo
2006-05-16 16:12 ` [Fwd: [RFT] major libata update] Jeff Garzik
2006-05-16 16:38 ` James Bottomley
2006-05-16 16:57 ` Jeff Garzik
2006-05-17 7:37 ` Jens Axboe
2006-05-17 15:06 ` Jeff Garzik
2006-05-17 15:50 ` James Bottomley
2006-05-17 15:58 ` James Smart
2006-05-17 16:17 ` Jeff Garzik
2006-05-17 17:53 ` James Bottomley
2006-05-17 22:08 ` Jeff Garzik
2006-05-17 22:15 ` Jeff Garzik
2006-05-17 17:47 ` Linus Torvalds
2006-05-17 17:55 ` Jens Axboe
2006-05-17 22:04 ` Linus Torvalds
2006-05-17 22:12 ` Jeff Garzik
2006-05-17 21:41 ` Jeff Garzik
2006-05-17 21:52 ` Douglas Gilbert
2006-05-17 22:20 ` Linus Torvalds
2006-05-18 3:04 ` Luben Tuikov
2006-05-17 16:05 ` Douglas Gilbert
2006-05-17 17:37 ` Jens Axboe
2006-05-17 21:58 ` Jeff Garzik
2006-05-18 7:21 ` Jens Axboe
2006-05-16 18:28 ` Luben Tuikov
2006-05-16 18:15 ` Luben Tuikov
2006-05-16 18:05 ` Luben Tuikov
2006-05-16 18:38 ` James Bottomley
2006-05-16 22:24 ` Luben Tuikov
2006-05-16 22:29 ` James Bottomley
2006-05-16 23:02 ` Luben Tuikov
2006-05-16 23:12 ` James Bottomley
2006-05-17 0:25 ` Luben Tuikov
2006-05-17 14:09 ` James Bottomley
2006-05-18 2:39 ` Luben Tuikov
2006-05-18 13:57 ` James Bottomley
2006-05-19 3:28 ` Luben Tuikov
2006-05-17 14:02 ` missed patch: Block I/O while SG reset operation in progress James Smart
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=4469F2B2.703@garzik.org \
--to=jeff@garzik.org \
--cc=James.Bottomley@SteelEye.com \
--cc=akpm@osdl.org \
--cc=htejun@gmail.com \
--cc=linux-ide@vger.kernel.org \
--cc=linux-scsi@vger.kernel.org \
--cc=torvalds@osdl.org \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.