Re: oops on usb storage device disconnect with 2.6.14-rc1

Mike Anderson
2005-09-15T22:19:46Z

James Bottomley <James.Bottomley@SteelEye.com> wrote:
> On Thu, 2005-09-15 at 15:57 -0400, James Bottomley wrote:
> > I haven't had time to review the eh changes, but I was going to reply to
> > the other one (basically there's a better way to try to close the device
> > add/host remove race using the host state model).
> >
> > Let me complete the SCSI process and I'll take them through the scsi-rc-
> > fixes tree.
>
> Well, I think the symptoms are racing scsi_remove_host() calls and the
> solution is to enforce the state model on removal (as in if the host is
> already in the remove state, don't try to remove it again).
>
> Could you try the patch here:
>
> http://marc.theaimsgroup.com/?l=linux-scsi&m=112613077011571
>
> And see if it will fix the problem?
>

A side effect of not applying Alan's previous patch that added
SHOST_RECOVERY to the SHOST_CANCEL: state is that we will not move to the
SHOST_CANCEL and subsequently not to SHOST_DEL state if the eh is active
during the start of scsi_remove_host. I sent mail on the 7th indicating to
include that state change hunk of the diff, but I guess that overlapped
with your newer state changes.
http://marc.theaimsgroup.com/?l=linux-scsi&m=112238726326927&w=2

In looking at the state model introduced by your patch I believe there may
still be a state model race issue if the recovery completes just after
the "if (!scsi_host_set_state(shost, SHOST_CANCEL))" call in
scsi_remove_host (maybe I am just looking to quickly at the state
updates).

I still do not understand as I asked in a previous comment why we are not
shutting down the eh_thread in scsi_remove_host and also why simpler state
model updates could not solve the problem.

I believe I also indicated that we could enhance scsi_error to shutdown
faster during this state which should only be a performance improvement.

-andmike
--
Michael Anderson
andmike@us.ibm.com

-------------------------------------------------------
SF.Net email is sponsored by:
Tame your development challenges with Apache's Geronimo App Server. Download
it for free - -and be entered to win a 42" plasma tv or your very own
Sony(tm)PSP. Click here to play: http://sourceforge.net/geronimo.php
_______________________________________________
linux-usb-devel@lists.sourceforge.net
To unsubscribe, use the last form field at: