All of lore.kernel.org
 help / color / mirror / Atom feed
From: Andrew Cooper <andrew.cooper3@citrix.com>
To: Andy Lutomirski <luto@amacapital.net>,
	Boris Ostrovsky <boris.ostrovsky@oracle.com>
Cc: "linux-kernel@vger.kernel.org" <linux-kernel@vger.kernel.org>,
	Linux Virtualization <virtualization@lists.linux-foundation.org>,
	Ingo Molnar <mingo@redhat.com>,
	David Vrabel <david.vrabel@citrix.com>,
	Andrew Lutomirski <luto@kernel.org>,
	"H. Peter Anvin" <hpa@zytor.com>,
	"xen-devel@lists.xenproject.org" <xen-devel@lists.xenproject.org>,
	Thomas Gleixner <tglx@linutronix.de>,
	Borislav Petkov <bp@suse.de>
Subject: Re: [Xen-devel] [PATCH v2 0/3] Fix and cleanup for 32-bit PV sysexit
Date: Tue, 15 Dec 2015 20:40:46 +0000	[thread overview]
Message-ID: <56707ACE.9060809__24928.5868522295$1450212066$gmane$org@citrix.com> (raw)
In-Reply-To: <CALCETrUeGoeB8vNgbRNkFXjH0A570=M+4L1sRsfh-7btym59nA@mail.gmail.com>

On 19/11/15 22:07, Andy Lutomirski wrote:
> On Thu, Nov 19, 2015 at 1:55 PM, Boris Ostrovsky
> <boris.ostrovsky@oracle.com> wrote:
>> The first patch fixes Xen PV regression introduced by 32-bit rewrite. Unlike the
>> earlier version it uses ALTERNATIVE instruction and avoids using xen_sysexit
>> (and sysret32 in compat mode) pv ops, as suggested by Andy.
>>
>> As result of this patch irq_enable_sysexit and usergs_sysret32 pv ops are not
>> used anymore by anyone and so can be removed.
> This whole series is:
>
> Acked-by: Andy Lutomirski <luto@kernel.org>
>
> Now I just have to sucker someone into getting rid of
> PARAVIRT_ADJUST_EXCEPTION_FRAME (by using stub entries) and the
> overcomplicated syscall entry stuff.  :)

Looking at this, it should be quite easy now.

ALTERNATIVE "", "pop %rcx; %pop %11", X86_FEATURE_XENPV

(Completely untested)

> And whoever gets rid of
> PARAVIRT_ADJUST_EXCEPTION_FRAME gets to wonder why it doesn't crash
> and burn for NMIs on Xen, since I'm reasonably confident that it can't
> possibly be correct.

The Xen PV ABI only has a single kernel stack pointer which may be
registered.  There is no equivalent of an IST, so if a second fault
occurs, it is delivered normally on the current stack.

By the looks of it, the other NMI handling is ambivalent to the fact
that it isn't really on an IST stack under Xen.

~Andrew

  parent reply	other threads:[~2015-12-15 20:40 UTC|newest]

Thread overview: 39+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2015-11-19 21:55 [PATCH v2 0/3] Fix and cleanup for 32-bit PV sysexit Boris Ostrovsky
2015-11-19 21:55 ` Boris Ostrovsky
2015-11-19 21:55 ` [PATCH v2 1/3] x86/xen: Avoid fast syscall path for Xen PV guests Boris Ostrovsky
2015-11-19 21:55 ` Boris Ostrovsky
2015-11-19 21:55   ` Boris Ostrovsky
2015-11-23 16:28   ` [tip:x86/asm] " tip-bot for Boris Ostrovsky
2015-12-15 15:21   ` [PATCH v2 1/3] " Boris Ostrovsky
2015-12-15 15:21     ` Boris Ostrovsky
2015-12-15 15:48     ` Borislav Petkov
2015-12-15 15:48     ` Borislav Petkov
2015-12-15 15:48       ` Borislav Petkov
2015-12-15 15:54       ` Boris Ostrovsky
2015-12-15 15:54         ` Boris Ostrovsky
2015-12-15 15:57         ` Andy Lutomirski
2015-12-15 15:57           ` Andy Lutomirski
2015-12-15 15:57         ` Andy Lutomirski
2015-12-15 15:54       ` Boris Ostrovsky
2015-12-15 15:21   ` Boris Ostrovsky
2015-12-19  9:15   ` [tip:x86/urgent] " tip-bot for Boris Ostrovsky
2015-11-19 21:55 ` [PATCH v2 2/3] x86: irq_enable_sysexit pv op is no longer needed Boris Ostrovsky
2015-11-19 21:55   ` Boris Ostrovsky
2015-11-23 16:28   ` [tip:x86/asm] x86/paravirt: Remove the unused irq_enable_sysexit pv op tip-bot for Boris Ostrovsky
2015-11-19 21:55 ` [PATCH v2 2/3] x86: irq_enable_sysexit pv op is no longer needed Boris Ostrovsky
2015-11-19 21:55 ` [PATCH v2 3/3] x86: usergs_sysret32 " Boris Ostrovsky
2015-11-19 21:55 ` Boris Ostrovsky
2015-11-19 21:55   ` Boris Ostrovsky
2015-11-23 16:29   ` [tip:x86/asm] x86/entry, x86/paravirt: Remove the unused usergs_sysret32 PV op tip-bot for Boris Ostrovsky
2015-11-19 22:07 ` [PATCH v2 0/3] Fix and cleanup for 32-bit PV sysexit Andy Lutomirski
2015-11-19 22:07   ` Andy Lutomirski
2015-12-15 20:40   ` Andrew Cooper
2015-12-15 20:40   ` [Xen-devel] " Andrew Cooper
2015-12-15 21:27     ` Andy Lutomirski
2015-12-15 21:27       ` Andy Lutomirski
2015-12-15 21:27     ` Andy Lutomirski
2015-12-15 20:40   ` Andrew Cooper [this message]
2015-11-19 22:07 ` Andy Lutomirski
2015-11-19 23:02 ` Borislav Petkov
2015-11-19 23:02 ` Borislav Petkov
2015-11-19 23:02   ` Borislav Petkov

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='56707ACE.9060809__24928.5868522295$1450212066$gmane$org@citrix.com' \
    --to=andrew.cooper3@citrix.com \
    --cc=boris.ostrovsky@oracle.com \
    --cc=bp@suse.de \
    --cc=david.vrabel@citrix.com \
    --cc=hpa@zytor.com \
    --cc=linux-kernel@vger.kernel.org \
    --cc=luto@amacapital.net \
    --cc=luto@kernel.org \
    --cc=mingo@redhat.com \
    --cc=tglx@linutronix.de \
    --cc=virtualization@lists.linux-foundation.org \
    --cc=xen-devel@lists.xenproject.org \
    /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 an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.