Messages in this thread | | | Date | Tue, 10 Mar 2015 07:25:46 +0100 | From | Ingo Molnar <> | Subject | Re: [PATCH] x86: entry_32.S: change ESPFIX test to not touch PT_OLDSS(%esp) |
| |
* Andy Lutomirski <luto@amacapital.net> wrote:
> On Mon, Mar 9, 2015 at 11:16 AM, Linus Torvalds > <torvalds@linux-foundation.org> wrote: > > On Mon, Mar 9, 2015 at 11:04 AM, Andy Lutomirski <luto@amacapital.net> wrote: > >> > >> One option would be to change the NMI entry code to move itself down 8 > >> bytes if this happens (came from kernel mode or sp == sp0 - 12, > >> perhaps). > > > > Hmm. That whole code currently depends on the stack setup being just a > > single instruction (the move to esp). And that simplifies things, I'd > > like to keep it that way. > > > > I'd *much* rather just keep the 8-byte padding. What was so > > problematic with that? It worked. It's been around forever. Removing > > it is the bug. > > Let's at least fix it, then. processor.h has: > > #define INIT_TSS { \ > .x86_tss = { \ > .sp0 = sizeof(init_stack) + (long)&init_stack, \ > > (moved in -tip) > > That's bogus, and this bogosity is why I broke 32-bit -next in the > first place: I assumed it was correct. > > I'll get it if no one beats me to it.
Please do and please post patches ASAP so that I can move tip:x86/asm back into a correct state again.
Thanks,
Ingo
| |