regression suspend/resume on Lenovo T420
Pete Wright
pete at nomadlogic.org
Mon May 15 17:34:18 UTC 2017
On 05/15/2017 10:27, Konstantin Belousov wrote:
> On Mon, May 15, 2017 at 02:37:16PM -0230, Jonathan Anderson wrote:
>> On 15 May 2017, at 7:26, Konstantin Belousov wrote:
>>> Try this. If it works, I will write a proper patch.
>>>
>>> diff --git a/sys/amd64/amd64/cpu_switch.S
>>> b/sys/amd64/amd64/cpu_switch.S
>>> index 33437ad16e6..9c0cd05ebea 100644
>>> --- a/sys/amd64/amd64/cpu_switch.S
>>> +++ b/sys/amd64/amd64/cpu_switch.S
>>> @@ -369,6 +369,11 @@ END(savectx)
>>> * Resuming processor state from pcb.
>>> */
>>> ENTRY(resumectx)
>>> + movl $MSR_EFER,%ecx
>>> + rdmsr
>>> + orl $EFER_NXE,%eax
>>> + wrmsr
>>> +
>>> /* Switch to KPML4phys. */
>>> movq KPML4phys,%rax
>>> movq %rax,%cr3
>> Running drm-next (which has -CURRENT last merged somewhere around
>> r317651), this patch fixes one of the two problems I've been
>> experiencing with suspend/resume. Definite progress. :)
> Could you, please, clarify. Does the resume work after this ? If not,
> how did you diagnosed that 'one of two problems' is solved with the change ?
I can confirm that suspending to a S3 state and resuming now works on
the drm-next branch as well.
this matches the previous behavior on my systems before recent updates
which broke suspend/resume - so i believe this patch works from a
functional POV.
-pete
--
Pete Wright
pete at nomadlogic.org
@nomadlogicLA
More information about the freebsd-current
mailing list