On Mon, Dec 11, 2017 at 7:13 AM, Ingo Molnar <mi...@kernel.org> wrote: > > * Andy Lutomirski <l...@amacapital.net> wrote: > >> >> >> > On Dec 10, 2017, at 1:38 PM, Pavel Machek <pa...@ucw.cz> wrote: >> > >> > >> > After 4.15-rc2, suspend stopped working on Thinkpad X60. 5b06bbc >> > (unintentionally?) reordered stuff with respect to >> > fix_processor_context() on 32-bit and 64-bit. We undo that change on >> > 32-bit. >> > >> >> Can you explain what was wrong with the reordering? Your patch certainly >> *looks* incorrect. >> >> I'm guessing that the real issue is that 32-bit needs %fs restored early for >> TLS. > > Does some early percpu primitive need GS as well perhaps? > > Might be safest to restore both FS and GS early. >
fs needs to be restored early for TLS. gs needs to be restored early, maybe, if !X86_32_LAZY_GS -- it's used for stack-protector. If X86_32_LAZY_GS, gs must *not* be restored early.