> > This is hard to trigger problem, so I'll spare you the rather lengthy log.
> > It happens if card timeouts and mmc_remove_host is called while 
> > mmc_register_card is still in
> > progress (the hint was in crash dump). If I sleep before remove, it gives 
> > the
> mmc_register_card
> > chance to finish/mark card as dead and everything's fine.
> > The remove callback of mmc_block is apparently not executed in this case 
> > (probably because
> device
> > has not finished registering).
> 
> Let's see, you manage to call mmc_remove_host() when a detection is pending in
> the workqueue? That could indeed generate new request (up until 
> mmc_free_host()
> is called), but as the card is removed the mmc layer shouldn't be able to 
> detect
> anything, hence mmc_block should never get involved.
> 

You'll agree, I think, that add_disk in mmc_block_probe issues a lot of 
requests (reads partition
table, fs superblocks and such - plenty of room for critical errors). Then, 
driver's remove method
will not be called before driver's probe method had finished. So mmc_block is 
quite involved, even
though it does not affect the problem's resolution.

Besides this, I have a new version of the tifm driver to submit. It fixes quite 
a few problems and
improves performance a little. Hopefully, it's better tested than the previous 
one.





 
____________________________________________________________________________________
Finding fabulous fares is fun.  
Let Yahoo! FareChase search your favorite travel sites to find flight and hotel 
bargains.
http://farechase.yahoo.com/promo-generic-14795097
-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to [EMAIL PROTECTED]
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Please read the FAQ at  http://www.tux.org/lkml/

Reply via email to