Bug 10984 - MMC print trace information when resume from suspend
Summary: MMC print trace information when resume from suspend
Alias: None
Product: Power Management
Classification: Unclassified
Component: Hibernation/Suspend (show other bugs)
Hardware: All Linux
: P1 normal
Assignee: Rafael J. Wysocki
Depends on:
Blocks: 7216
  Show dependency tree
Reported: 2008-06-26 01:15 UTC by Jie Luo
Modified: 2011-01-18 07:59 UTC (History)
3 users (show)

See Also:
Kernel Version: 2.6.26-rc8
Regression: No
Bisected commit-id:

dmesg (34.91 KB, text/plain)
2008-06-26 01:16 UTC, Jie Luo
dmesg with PM debug enabled (89.46 KB, text/plain)
2008-06-26 10:33 UTC, Jie Luo
dmesg with PM debug and MMC debug enabled (143.99 KB, text/plain)
2008-06-26 10:53 UTC, Jie Luo

Description Jie Luo 2008-06-26 01:15:08 UTC
Latest working kernel version: 2.6.25
Earliest failing kernel version: 2.6.26-rc6
Distribution: Gentoo
Hardware Environment: ThinkPad X60
Software Environment:
Problem Description:

When resume mmc cause kernel to print trace information, but I still can use my sdcard. It is a regression from 2.6.25.

Steps to reproduce: 

1. boot with sdcard inserted.
2. suspend
3. resume
Comment 1 Jie Luo 2008-06-26 01:16:53 UTC
Created attachment 16632 [details]
Comment 2 Pierre Ossman 2008-06-26 01:55:11 UTC
This looks like a driver core issue. The problem is that it is adding a new device (the redetected card), to a parent that hasn't resumed yet. That shouldn't be possible though, as the redetection is put on a delayed workqueue by the parent's resume routine. And AFAIK, we're single CPU and not preemptible during resume, so the workqueue shouldn't run until the parent has finished resuming.

Jiu Lou, if you could retest with PM debugging enabled, that would probably help as it'll print when each device gets resumed.
Comment 3 Jie Luo 2008-06-26 10:33:23 UTC
Created attachment 16638 [details]
dmesg with PM debug enabled
Comment 4 Jie Luo 2008-06-26 10:53:42 UTC
Created attachment 16639 [details]
dmesg with PM debug and MMC debug enabled
Comment 5 Rafael J. Wysocki 2008-07-06 10:54:22 UTC
Handled-By : Pierre Ossman <mailto:drzeus-bugzilla@drzeus.cx>
Comment 6 Pierre Ossman 2008-07-06 11:03:31 UTC
Huh? I wouldn't know how to debug this. The PM core is complaining even though the traces show that the parent got resumed way earlier. So at this point I don't see how this is a MMC problem.
Comment 7 Rafael J. Wysocki 2008-07-06 11:11:19 UTC

Not-Handled-By : Pierre Ossman <mailto:drzeus-bugzilla@drzeus.cx>
Comment 8 Rafael J. Wysocki 2008-07-07 15:19:56 UTC
Sorry, I should have looked more closely at this entry.

In fact, the issue is known and the warning is harmless.  It is a consequence of an intentional change supposed to catch suspend ordering violations, which works correctly, because the MMC driver violates the suspend ordering.  However, it does that in a way which doesn't lead to any real breakage.

We are going to fix the driver in the future, after we've changed the suspend-resume core, which is supposed to happen in 2.6.27.
Comment 9 Rafael J. Wysocki 2008-07-07 15:20:36 UTC
Dropping from the list of regressions.
Comment 10 Zhang Rui 2009-03-18 19:24:34 UTC
Rafael, what's the status of this bug? :)
Comment 11 Jie Luo 2009-03-24 01:02:24 UTC
(In reply to comment #10)
> Rafael, what's the status of this bug? :)
I think it got fixed, I didn't see it with recent kernel.

Note You need to log in before you can comment on or make changes to this bug.