Re: [PATCH] New QStor SATA/RAID Driver for 2.6.9-rc2

Mark Lord
2004-09-14T18:06:09Z

>In particular, releasing the lock and sleeping would be very wrong
>in the ->queuecommand and error handling paths
>(alas... I would love to sleep in the fine-grained eh hooks)

Mmm.. definitely no sleeps in queuecommand(), but sleeping seems
necessary in host_reset_handler() -- the alternative is to just
busywait inline.. which would really not be good.

Isn't the protocol for the eh host_reset_handler() basically
just "do the reset, and return whether it worked or not?".
If so, the driver really has to hang around until the reset
completes so that correct status can be returned. This generally
takes a couple of milliseconds in practice (measured it).

Is there a better way to do that?

I really would prefer never to have to reset the drives,
but when they have a queuing error, many of them simply
won't talk to us again without a reset. The driver avoids
the reset as much as it can for other situations, though.

Cheers
--
Mark Lord
(hdparm keeper & the original "Linux IDE Guy")