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

Zdenek Kabelac
2008-03-06T20:54:52Z

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?

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...

Zdenek