[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <CA+55aFy-YwVGA1S3vwLmFSVpPU6g+n_kuNJE22bjfKwgqhcKBA@mail.gmail.com>
Date: Mon, 8 Jan 2018 16:48:09 -0800
From: Linus Torvalds <torvalds@...ux-foundation.org>
To: David Woodhouse <dwmw2@...radead.org>
Cc: "linux-kernel@...r.kernel.org" <linux-kernel@...r.kernel.org>,
"tim.c.chen@...ux.intel.com" <tim.c.chen@...ux.intel.com>,
"peterz@...radead.org" <peterz@...radead.org>,
"tglx@...utronix.de" <tglx@...utronix.de>,
"ak@...ux.intel.com" <ak@...ux.intel.com>,
"riel@...hat.com" <riel@...hat.com>,
"keescook@...gle.com" <keescook@...gle.com>,
"gnomes@...rguk.ukuu.org.uk" <gnomes@...rguk.ukuu.org.uk>,
"pjt@...gle.com" <pjt@...gle.com>,
"dave.hansen@...el.com" <dave.hansen@...el.com>,
"luto@...capital.net" <luto@...capital.net>,
"jikos@...nel.org" <jikos@...nel.org>,
"gregkh@...ux-foundation.org" <gregkh@...ux-foundation.org>
Subject: Re: [PATCH v6 11/10] x86/retpoline: Avoid return buffer underflows on
context switch
On Mon, Jan 8, 2018 at 4:42 PM, David Woodhouse <dwmw2@...radead.org> wrote:
>
> Hm... on a context switch you're reloading the registers that were in
> the other saved context.
Actually, iirc we used to very actively try to minimize that by having
the inline asm mark a lot of registers as clobbered.
We moved away from that and now have that "switch_to_asm()" call
instead, but that was for unrelated reasons.
If I remember our old inline asm, we actually had *very* little real
data that was actually live on context switch, particularly that last
"branch to new EIP" point.
Partly because we had different targets, one of which was that "return
from fork" case.
But maybe I mis-remember. Wouldn't be the first time. This is code I
used to know well, but that was many many moons ago, now there are
other suckers^W maintainers who actually work with it.
Linus
Powered by blists - more mailing lists