Alex Dubov wrote:
> 
> mmc_rescan
>   mmc_register_card
>     device_add
>       mmc_block_probe
>         mmc_block_alloc
>           -> queue thread starts running
>         add_disk
>           -> issues a lot of requests; card fails, my drivers calls 
> mmc_remove_host, which in 
>              turn calls device_del, though we are still in device_add
> 

Ahhh, now I see. Well that's an entirely different kettle of fish.

Removing the device in this stack is not supported (we would have a whole bunch
of nasty dead lock possibilities to consider). You need to delay the removal in
some form, e.g. using the mmc workqueue.

Rgds
-- 
     -- Pierre Ossman

  Linux kernel, MMC maintainer        http://www.kernel.org
  PulseAudio, core developer          http://pulseaudio.org
  rdesktop, core developer          http://www.rdesktop.org
-
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