From: Stas Sergeev <stsp@aknet.ru>
To: Jan Beulich <JBeulich@novell.com>
Cc: vandrove@vc.cvut.cz, linux-kernel@vger.kernel.org
Subject: Re: [patch] x86: fix ESP corruption CPU bug (take 2)
Date: Tue, 13 Sep 2005 22:07:32 +0400 [thread overview]
Message-ID: <43271564.7020307@aknet.ru> (raw)
In-Reply-To: <43269D12.76F0.0078.0@novell.com>
Hi.
Jan Beulich wrote:
> Yes, this comes close. Still, I'm more interested to understand why
> this approach was *not* chosen, which doesn't seem to be covered by any
> of the (only two) followups.
Yes, that was discussed privately.
But I am very intrigued why are you asking.
I thought this problem is very specific to
the virtualizers, like dosemu, maybe wine or
vmware, but not much more. Could you please
clarify what exactly problem does this solve
for you? I'm just curious.
As for why the other approach was developed,
here are the main points that I can recall:
- Run-time GDT patching is UGLY.
- Switching back to the 32bit stack is extremely
tricky in an NMI handler. Proving that this will
work even when the exception handler is being
NMIed, was nearly impossible (though I think I
got that part right).
- Overall the patch was so fragile and hackish-looking,
that Linus complained and proposed the plan to
get rid of the most of fragility. That included
allocating a separate per-cpu stacks and rewriting
the fixups mostly in C. He also proposed a lot of
the optimizations to make the C-based patch as
fast as an asmish one. That all made the patch
overall much better (and much bigger, too) and
helped to fix the regressions quickly (there were
quite a few, but they were not the bugs in the
patch itself :)
next prev parent reply other threads:[~2005-09-13 18:07 UTC|newest]
Thread overview: 11+ messages / expand[flat|nested] mbox.gz Atom feed top
2005-09-05 8:39 [patch] x86: fix ESP corruption CPU bug (take 2) Jan Beulich
2005-09-11 14:02 ` Stas Sergeev
2005-09-12 7:11 ` Jan Beulich
2005-09-12 16:57 ` Stas Sergeev
2005-09-13 7:34 ` Jan Beulich
2005-09-13 18:07 ` Stas Sergeev [this message]
-- strict thread matches above, loose matches on Subject: below --
2005-03-13 18:20 [patch] x86: fix ESP corruption CPU bug Stas Sergeev
2005-03-13 20:10 ` Pavel Machek
2005-03-13 20:55 ` Stas Sergeev
2005-03-13 21:13 ` Linus Torvalds
2005-03-13 22:06 ` [patch] x86: fix ESP corruption CPU bug (take 2) Stas Sergeev
2005-03-14 19:29 ` Alan Cox
2005-03-14 19:59 ` Stas Sergeev
2005-03-15 3:34 ` Andrew Morton
2005-03-15 19:48 ` Stas Sergeev
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=43271564.7020307@aknet.ru \
--to=stsp@aknet.ru \
--cc=JBeulich@novell.com \
--cc=linux-kernel@vger.kernel.org \
--cc=vandrove@vc.cvut.cz \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox