Re: [Xen-devel] [PATCH] x86, paravirt, xen: Remove the 64-bit irq_enable_sysexit pvop

From: Boris Ostrovsky
Date: Mon Apr 06 2015 - 16:27:51 EST

On 04/06/2015 04:03 PM, Andy Lutomirski wrote:
On Mon, Apr 6, 2015 at 11:30 AM, Boris Ostrovsky
<boris.ostrovsky@xxxxxxxxxx> wrote:
On 04/06/2015 01:44 PM, Andrew Cooper wrote:
On 06/04/2015 16:29, Andy Lutomirski wrote:
On Mon, Apr 6, 2015 at 7:10 AM, Konrad Rzeszutek Wilk
<konrad.wilk@xxxxxxxxxx> wrote:
On Fri, Apr 03, 2015 at 03:52:30PM -0700, Andy Lutomirski wrote:
[cc: Boris and Konrad. Whoops]

On Fri, Apr 3, 2015 at 3:51 PM, Andy Lutomirski <luto@xxxxxxxxxx>
We don't use irq_enable_sysexit on 64-bit kernels any more. Remove
Is there an commit (or name of patch) that explains why
kernels is unsavory?
sysexit never tasted very good :-p

We're (hopefully) not breaking 32-bit-user-space-on-64-bit, but we're
trying an unconventional approach to making the code faster and less
scary. As a result, 64-bit kernels won't use sysexit any more.
Hopefully Xen is okay with the slightly sneaky thing we're doing.
AFAICT Xen thinks of sysretl and sysexit as slightly funny irets, so I
don't expect there to be any problem.
64bit PV kernels must bounce through Xen to switch from the kernel to
the user pagetables (since both kernel and userspace are both actually
running in ring3 with user pages).

As a result, exit to userspace ends up as a hypercall into Xen which has
an effect very similar to an `iret`, but with some extra fixup in the

I can't forsee any Xen issues as a result of this patch.

I ran tip plus this patch (plus another patch that fixes an unrelated Xen
regression in tip) through our test suite and it completed without problems.

I also ran some very simple 32-bit programs in a 64-bit PV guest and didn't
see any problems there neither.
At the risk of redundancy, did you test on Intel hardware? At least
on native systems, the code in question never executes on AMD systems.

Yes, the tests ran on Intel. I left them scheduled for overnight runs too and that will be executed on both AMD and Intel.

To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at
Please read the FAQ at