* [Regression, 2.6.32->33-rc1] Commit 9f15226e755 breaks resume on Toshiba Portege R500
@ 2009-12-23 0:58 Rafael J. Wysocki
2009-12-23 23:01 ` Rafael J. Wysocki
0 siblings, 1 reply; 2+ messages in thread
From: Rafael J. Wysocki @ 2009-12-23 0:58 UTC (permalink / raw)
To: Andreas Herrmann; +Cc: Ingo Molnar, LKML, Linus Torvalds, pm list
Hi Andreas,
Unfortunately your commit 9f15226e75583547aaf542c6be4bdac1060dd425
(x86, ucode-amd: Ensure ucode update on suspend/resume after CPU off/online
cycle) breaks resume from suspend to RAM on my Toshiba Portege R500 (an attempt
to resume causes a hard hang with 100% CPU load, reproducible 100% of the
time). This has been found by bisection and confirmed by reverting this commit
on top of 2.6.33-rc1.
Strangely enough, the box doesn't even have an AMD CPU, there's an Intel Core2
Duo in it, so I suspect some missing check somewhere.
If I have the time, I'll look deeper into this tomorrow.
[BTW, I can't recall seeing this patch before. That very well may be my fault,
but please make sure that CCs of suspend-related patches are sent to me in
future.]
Rafael
^ permalink raw reply [flat|nested] 2+ messages in thread
* Re: [Regression, 2.6.32->33-rc1] Commit 9f15226e755 breaks resume on Toshiba Portege R500
2009-12-23 0:58 [Regression, 2.6.32->33-rc1] Commit 9f15226e755 breaks resume on Toshiba Portege R500 Rafael J. Wysocki
@ 2009-12-23 23:01 ` Rafael J. Wysocki
0 siblings, 0 replies; 2+ messages in thread
From: Rafael J. Wysocki @ 2009-12-23 23:01 UTC (permalink / raw)
To: Andreas Herrmann, Linus Torvalds; +Cc: Ingo Molnar, LKML, pm list
On Wednesday 23 December 2009, Rafael J. Wysocki wrote:
> Hi Andreas,
>
> Unfortunately your commit 9f15226e75583547aaf542c6be4bdac1060dd425
> (x86, ucode-amd: Ensure ucode update on suspend/resume after CPU off/online
> cycle) breaks resume from suspend to RAM on my Toshiba Portege R500 (an attempt
> to resume causes a hard hang with 100% CPU load, reproducible 100% of the
> time). This has been found by bisection and confirmed by reverting this commit
> on top of 2.6.33-rc1.
>
> Strangely enough, the box doesn't even have an AMD CPU, there's an Intel Core2
> Duo in it, so I suspect some missing check somewhere.
>
> If I have the time, I'll look deeper into this tomorrow.
I think commit 9f15226e755 is wrong, since it causes microcode_init_cpu()
to be called during resume even for CPUs for which there's no microcode to
apply. That, in turn, results in executing request_firmware() (on Intel CPUs
at least) which doesn't work at this stage of resume (we have device interrupts
disabled, I/O devices are still suspended and so on).
If I'm not mistaken, the "if (uci->valid)" logic means "if that CPU is known
to us" , so before commit 9f15226e755 microcode_resume_cpu() was called for
all CPUs already in the system during suspend, which was the right thing to do.
The commit changed it so that the CPUs without microcode to apply are now
treated as "unknown", which is not quite right.
The problem this commit attempted to solve has to be handled differently.
Linus, please revert commit 9f15226e755.
Rafael
^ permalink raw reply [flat|nested] 2+ messages in thread
end of thread, other threads:[~2009-12-23 23:01 UTC | newest]
Thread overview: 2+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2009-12-23 0:58 [Regression, 2.6.32->33-rc1] Commit 9f15226e755 breaks resume on Toshiba Portege R500 Rafael J. Wysocki
2009-12-23 23:01 ` Rafael J. Wysocki
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox
all inboxes | Powered by JetHome®