Re: [PATCH][v7] x86, suspend: Save/restore extra MSR registers for suspend

From: Chen Yu
Date: Wed May 25 2016 - 01:02:46 EST

Hi Len,

On Wed, May 25, 2016 at 12:09 AM, Len Brown <lenb@xxxxxxxxxx> wrote:
> +mjg59, who may be seeing this issue on a skylake laptop
> Chen-yu,
> Great debugging, but I think there is a more general fix possible than
> this DMI quirk.
> I agree that in this example, a grantley server, it seems the BIOS is
> erroneously
> returning a bogus value of MSR_IA32_THERM_CONTROL on resume from S3.
> But another scenario is also possible. Consider a laptop that is resuming HOT
> and the BIOS correctly enables throttling. If this code were invoked, it would
> restore the COLD setting.
> Instead, it seems to me that the ACPI processor driver should upon .resume
> check if throttling should be enabled or not, and proceed accordingly.
> That would always do the "right thing", and would not need a DMI list.
> Does that make sense?
I agree, to let the related drivers customize their restoring process
would be more robust,
and we can not only take care of boot CPU but also nonboot CPUs in this way.
I think we can add something like acpi_processor_reevaluate_tstate in the resume
hook,I'll make a double check.