Re: Bugs in MMC [was: [Bug 10030] Suspend doesn't work when SD card is inserted]

Rafael J. Wysocki
2008-03-06T21:32:53Z

On Thursday, 6 of March 2008, Zdenek Kabelac wrote:
> 2008/3/6, Alan Stern <stern@rowland.harvard.edu>:
> > On Thu, 6 Mar 2008, Pavel Machek wrote:
> >
> > > On Tue 2008-03-04 16:00:51, Alan Stern wrote:
> > > > On Tue, 4 Mar 2008, David Brownell wrote:
> > > >
> > > > > > What's wrong with a superfluous probe at resume time, besides the waste
> > > > > > of a few milliseconds?
> > > > >
> > > > > I'm more concerned with the undesirable removal of devices at suspend
> > > > > time ... ones with mounted filesystems etc.
> > > >
> > > > On that we can agree. The removal is done if the host doesn't define a
> > > > resume method. There doesn't seem to be any point to that, given that
> > > > the probing during resume will determine whether a card has in fact
> > > > been removed.
> > >
> > > Hmm, if the driver is sleeping too deeply, user might have removed the
> > > card and put in different one, without driver noticing. That would be
> > > _bad_.
> >
> >
> > Ironically, the very same problem now exists with the USB mass-storage
> > driver. I don't see any way for the driver itself to solve it,
> > especially during a hibernation (which can be a _very_ deep sleep).
> >
> > One thing that could be done is for filesystems to verify, after a
> > system sleep, that their superblocks haven't changed. There could
> > still be issues with non-mounted partitions, if they have live entries
> > in the block cache, but it would be an improvement.
> >
> > Do you know the right people to mention this to? Anybody in filesystem
> > development interested in suspend/hibernation issues?

I don't really think so (but I may be wrong ...)

> IMHO the way would be to try to unmount fs if it's possible - if not -
> user should be notified on suspend/hibernation that he must preserve
> media in its place after resume and it should be checked and user
> should be notified if different devices/fs were find...

This is a very long standing issue which IMO can only be solved by making
filesystems suspend-aware.

Thanks,
Rafael