Re: [Xen-devel] [PATCH] x86_emulate: Always truncate %eip out of long mode

2016-01-06 Thread Andrew Cooper
On 06/01/16 15:44, Jan Beulich wrote: > Ping? Sorry - this is still on my todo list, but I have more urgent work currently. ~Andrew > On 15.12.15 at 09:53, wrote: > On 10.12.15 at 21:03, wrote: >>> --- a/xen/arch/x86/x86_emulate/x86_emulate.c >>> +++ b/xen/arch/x86/x86_emulate/x86_emu

Re: [Xen-devel] [PATCH] x86_emulate: Always truncate %eip out of long mode

2016-01-06 Thread Jan Beulich
Ping? >>> On 15.12.15 at 09:53, wrote: On 10.12.15 at 21:03, wrote: >> --- a/xen/arch/x86/x86_emulate/x86_emulate.c >> +++ b/xen/arch/x86/x86_emulate/x86_emulate.c >> @@ -570,8 +570,10 @@ do{ asm volatile ( >> > >>\ >> /* Fetch next

Re: [Xen-devel] [PATCH] x86_emulate: Always truncate %eip out of long mode

2015-12-15 Thread Jan Beulich
>>> On 10.12.15 at 21:03, wrote: > --- a/xen/arch/x86/x86_emulate/x86_emulate.c > +++ b/xen/arch/x86/x86_emulate/x86_emulate.c > @@ -570,8 +570,10 @@ do{ asm volatile ( >\ > /* Fetch next part of the instruction being emulated. */ > #define

Re: [Xen-devel] [PATCH] x86_emulate: Always truncate %eip out of long mode

2015-12-11 Thread Jan Beulich
>>> On 11.12.15 at 12:12, wrote: > On 11/12/15 10:47, Jan Beulich wrote: >> Furthermore, doesn't this make the wrapping-inside-an-insn >> situation worse (i.e. what looks broken for 32- and 64-bit modes >> now gets broken also for 16-bit mode)? > > I don't understand which "broken" you are referr

Re: [Xen-devel] [PATCH] x86_emulate: Always truncate %eip out of long mode

2015-12-11 Thread Andrew Cooper
On 11/12/15 10:47, Jan Beulich wrote: On 10.12.15 at 21:03, wrote: >> --- a/xen/arch/x86/x86_emulate/x86_emulate.c >> +++ b/xen/arch/x86/x86_emulate/x86_emulate.c >> @@ -570,8 +570,10 @@ do{ asm volatile ( >> >>\ >> /* Fetch next part o

Re: [Xen-devel] [PATCH] x86_emulate: Always truncate %eip out of long mode

2015-12-11 Thread Jan Beulich
>>> On 10.12.15 at 21:03, wrote: > --- a/xen/arch/x86/x86_emulate/x86_emulate.c > +++ b/xen/arch/x86/x86_emulate/x86_emulate.c > @@ -570,8 +570,10 @@ do{ asm volatile ( >\ > /* Fetch next part of the instruction being emulated. */ > #define

[Xen-devel] [PATCH] x86_emulate: Always truncate %eip out of long mode

2015-12-10 Thread Andrew Cooper
_regs.eip needs to be truncated after having size added to it, or bad situations can occur. e.g. emulating an instruction which crosses the 4GB boundary causes _regs.eip to become invalid (have some of the upper 32 bits set), and fail vmentry checks when returning back to the guest. The comment /*