> -----Original Message----- > From: Maxim Levitsky [mailto:maximlevitsky@xxxxxxxxx] > Sent: Thursday, August 05, 2010 6:21 PM > To: Madhusudhan > Cc: linux-mmc@xxxxxxxxxxxxxxx; 'Pierre Ossman' > Subject: RE: MMC card removal in suspend state > > On Thu, 2010-08-05 at 17:54 -0500, Madhusudhan wrote: > > > > > -----Original Message----- > > > From: Maxim Levitsky [mailto:maximlevitsky@xxxxxxxxx] > > > Sent: Thursday, August 05, 2010 5:43 PM > > > To: Madhusudhan > > > Cc: linux-mmc@xxxxxxxxxxxxxxx; 'Pierre Ossman' > > > Subject: Re: MMC card removal in suspend state > > > > > > On Thu, 2010-08-05 at 16:45 -0500, Madhusudhan wrote: > > > > Hi, > > > > > > > > Recently, while looking at some stuff I saw the below patch done by > > > Pierre > > > > which is part of the drivers/mmc/card/queue.c file. I wonder if > someone > > > can > > > > through more light on this to understand where could be a potential > > > deadlock > > > > without calling mmc_queue_resume. > > > > > > > > Is there a need for the mmc queue to be resumed before calling > > > > del_gendisk(md->disk) in the card removal path?? > > > > > > Very recently I have seen that memstick core hangs if queue is > > > suspended, and del_gendisk is called, so that hang is real. > > > > Sorry, I have no clue what is memstick core. Do mean that calling > > del_gendisk when the queue is suspended could potentially hang? > I think so. > Hmm... Currently, in mmc that is the sequence. /* Stop new requests from getting into the queue */ del_gendisk(md->disk); /* Then flush out any already in there */ mmc_cleanup_queue(&md->queue); The queue is resumed only in mmc_cleanup_queue. Did your recent patch alter this sequence in any way? Regards, Madhu > > Best regards, > Maxim Levitsky > -- To unsubscribe from this list: send the line "unsubscribe linux-mmc" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html