Re: [PATCH 1/2] MEMSTICK: fix hangs on unexpected device removalin mspro_blk

From: Maxim Levitsky
Date: Wed Aug 04 2010 - 17:41:46 EST


On Wed, 2010-08-04 at 19:53 +0300, Maxim Levitsky wrote:
> On Wed, 2010-08-04 at 00:50 -0700, Alex Dubov wrote:
> > --- On Tue, 3/8/10, Maxim Levitsky <maximlevitsky@xxxxxxxxx> wrote:
> >
> > > Now that del_gendisk syncs, we better
> > > start rejecting requests right away.
> >
> >
> > I don't quite see why this change is needed. My understanding is, user
> > accessible interface should be marked as removed as early, as possible.
>
> The problem here is that del_gendisk, syncs the device.
> This is new change, made after you did your drivers.
>
> I have this problem on jMicron too (which otherwise works fine).
The problem is that card check thread explicitly calls ->stop before
removing the device.
In case of mspro_blk.c that stops the request queue.
Attempt to call del_gendisk with stopped request queue hangs due to
syncing.


>
>
> PS:
>
> I have a copy of your ms_block.c.
> I would would be very happy if you share with me, what problems does it
> still have (besides need of trivial port for changes in block system,
> because I want to push it upstream too.
>
> I have MS DUO 64M to test it against.
>
>
Best regards,
Maxim Levitsky



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