Stephen Hemminger wrote:
On Fri, 01 Dec 2006 20:45:51 +0300
Alexey Starikovskiy <alexey.y.starikovskiy@xxxxxxxxxxxxxxx> wrote:
Linus Torvalds wrote:
On Fri, 1 Dec 2006, Pavel Machek wrote:
So it looks like we need this sequence:
enable_nonboot_cpus() /* INIT */
finish() /* _WAK */
device_resume()
Can somebody remind me about this immediately after 2.6.19?
Remind. But note that freezer is not yet SMP safe... Rafael is working
on that.
Thanks.
On the other hand, I really wonder (and suspect) whether the problem isn't
really the freezer or even the kernel resume ordering, but simply an ACPI
internal resume ordering thing.
Doesn't ACPI have per-device "WAK" calls anyway? Shouldn't we just call
those _individually_ as we walk the device tree (perhaps in the
"early_resume" stage) rather than calling them all in one chunk?
Linus
_WAK method is system-wide. Individual objects do not have their own
resume methods.
One way of reordering internal ACPI resume is done in patch series to
7122, I mentioned that earlier.
It's possible to resume ACPI devices after execution of _WAK in pm->finish.
Does it solve the original problem where finish() was getting run after
device_resume(), and finish() was corrupting PCI register settings like
MSI?
No, only the case with ACPI devices... all other devices are untouched.
-
To unsubscribe from this list: send the line "unsubscribe linux-acpi" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html