Re: [Xen-devel] [PATCH 1/2] x86/entry/64: Do not clear %rbx under Xen

2018-07-23 Thread Boris Ostrovsky
On 07/21/2018 07:18 PM, M. Vefa Bicakci wrote: > On 07/21/2018 05:19 PM, Boris Ostrovsky wrote: >> On 07/21/2018 03:49 PM, M. Vefa Bicakci wrote: >>> diff --git a/arch/x86/entry/entry_64.S b/arch/x86/entry/entry_64.S >>> index c7449f377a77..96e8ff34129e 100644 >>> --- a/arch/x86/entry/entry_64.S

Re: [Xen-devel] [PATCH 1/2] x86/entry/64: Do not clear %rbx under Xen

2018-07-22 Thread Andrew Cooper
On 22/07/18 18:56, Andy Lutomirski wrote: > On Sat, Jul 21, 2018 at 6:20 PM, M. Vefa Bicakci wrote: >> On 07/21/2018 07:37 PM, M. Vefa Bicakci wrote: >>> On 07/21/2018 07:30 PM, Andy Lutomirski wrote: On Sat, Jul 21, 2018 at 4:19 PM, M. Vefa Bicakci wrote: > On 07/21/2018 05:45 PM,

Re: [Xen-devel] [PATCH 1/2] x86/entry/64: Do not clear %rbx under Xen

2018-07-22 Thread Andy Lutomirski
On Sat, Jul 21, 2018 at 6:20 PM, M. Vefa Bicakci wrote: > On 07/21/2018 07:37 PM, M. Vefa Bicakci wrote: >> >> On 07/21/2018 07:30 PM, Andy Lutomirski wrote: >>> >>> On Sat, Jul 21, 2018 at 4:19 PM, M. Vefa Bicakci >>> wrote: On 07/21/2018 05:45 PM, Andy Lutomirski wrote: > >

Re: [Xen-devel] [PATCH 1/2] x86/entry/64: Do not clear %rbx under Xen

2018-07-21 Thread M. Vefa Bicakci
On 07/21/2018 07:37 PM, M. Vefa Bicakci wrote: On 07/21/2018 07:30 PM, Andy Lutomirski wrote: On Sat, Jul 21, 2018 at 4:19 PM, M. Vefa Bicakci wrote: On 07/21/2018 05:45 PM, Andy Lutomirski wrote: On Sat, Jul 21, 2018 at 12:49 PM, M. Vefa Bicakci wrote: Commit 3ac6d8c787b8

Re: [Xen-devel] [PATCH 1/2] x86/entry/64: Do not clear %rbx under Xen

2018-07-21 Thread M. Vefa Bicakci
On 07/21/2018 07:30 PM, Andy Lutomirski wrote: On Sat, Jul 21, 2018 at 4:19 PM, M. Vefa Bicakci wrote: On 07/21/2018 05:45 PM, Andy Lutomirski wrote: On Sat, Jul 21, 2018 at 12:49 PM, M. Vefa Bicakci wrote: Commit 3ac6d8c787b8 ("x86/entry/64: Clear registers for exceptions/interrupts, to

Re: [Xen-devel] [PATCH 1/2] x86/entry/64: Do not clear %rbx under Xen

2018-07-21 Thread Andy Lutomirski
On Sat, Jul 21, 2018 at 4:19 PM, M. Vefa Bicakci wrote: > On 07/21/2018 05:45 PM, Andy Lutomirski wrote: >> >> On Sat, Jul 21, 2018 at 12:49 PM, M. Vefa Bicakci >> wrote: >>> >>> Commit 3ac6d8c787b8 ("x86/entry/64: Clear registers for >>> exceptions/interrupts, to reduce speculation attack

Re: [Xen-devel] [PATCH 1/2] x86/entry/64: Do not clear %rbx under Xen

2018-07-21 Thread M. Vefa Bicakci
On 07/21/2018 05:19 PM, Boris Ostrovsky wrote: On 07/21/2018 03:49 PM, M. Vefa Bicakci wrote: diff --git a/arch/x86/entry/entry_64.S b/arch/x86/entry/entry_64.S index c7449f377a77..96e8ff34129e 100644 --- a/arch/x86/entry/entry_64.S +++ b/arch/x86/entry/entry_64.S @@ -1129,7 +1129,7 @@

Re: [Xen-devel] [PATCH 1/2] x86/entry/64: Do not clear %rbx under Xen

2018-07-21 Thread M. Vefa Bicakci
On 07/21/2018 05:45 PM, Andy Lutomirski wrote: On Sat, Jul 21, 2018 at 12:49 PM, M. Vefa Bicakci wrote: Commit 3ac6d8c787b8 ("x86/entry/64: Clear registers for exceptions/interrupts, to reduce speculation attack surface") unintendedly broke Xen PV virtual machines by clearing the %rbx register

Re: [Xen-devel] [PATCH 1/2] x86/entry/64: Do not clear %rbx under Xen

2018-07-21 Thread Andy Lutomirski
On Sat, Jul 21, 2018 at 12:49 PM, M. Vefa Bicakci wrote: > Commit 3ac6d8c787b8 ("x86/entry/64: Clear registers for > exceptions/interrupts, to reduce speculation attack surface") unintendedly > broke Xen PV virtual machines by clearing the %rbx register at the end of > xen_failsafe_callback

Re: [Xen-devel] [PATCH 1/2] x86/entry/64: Do not clear %rbx under Xen

2018-07-21 Thread Boris Ostrovsky
On 07/21/2018 03:49 PM, M. Vefa Bicakci wrote: > diff --git a/arch/x86/entry/entry_64.S b/arch/x86/entry/entry_64.S > index c7449f377a77..96e8ff34129e 100644 > --- a/arch/x86/entry/entry_64.S > +++ b/arch/x86/entry/entry_64.S > @@ -1129,7 +1129,7 @@ ENTRY(xen_failsafe_callback) > addq

[Xen-devel] [PATCH 1/2] x86/entry/64: Do not clear %rbx under Xen

2018-07-21 Thread M. Vefa Bicakci
Commit 3ac6d8c787b8 ("x86/entry/64: Clear registers for exceptions/interrupts, to reduce speculation attack surface") unintendedly broke Xen PV virtual machines by clearing the %rbx register at the end of xen_failsafe_callback before the latter jumps to error_exit. error_exit expects the %rbx