Re: "nosmt" breaks resuming from hibernation (was Re: [5.2-rc1 regression]: nvme vs. hibernation)
From: Jiri Kosina
Date: Tue May 28 2019 - 15:25:52 EST
On Tue, 28 May 2019, Jiri Kosina wrote:
> [ some x86/PM folks added ]
>
> I isolated this to 'nosmt' being present in the "outer" (resuming) kernel,
> and am still not sure whether this is x86 issue or nvme/PCI/blk-mq issue.
>
> For the newcomers to this thread: on my thinkpad x270, 'nosmt' reliably
> breaks resume from hibernation; after the image is read out from disk and
> attempt is made to jump to the old kernel, machine reboots.
Thomas figured it out (and this should be really more widespread than just
my machine :) ).
nosmt forces HT siblings to mwait, but that explodes after %cr3 change
during resume, as the mwait target address is all of a sudden not valid
anymore for neither of the hyperthreads.
That also explains why I apparently didn't see it that regularly with
kaslr disabled.
Nothing to do with nvme, so let's not continue coming up with proper fix
in this thread.
Thanks,
--
Jiri Kosina
SUSE Labs