Re: [Xen-devel] [PATCH] xen/x86: Improve hypercall page writing

2016-12-20 Thread Jan Beulich
>>> On 20.12.16 at 13:21, wrote: > On 20/12/2016 07:48, Jan Beulich wrote: >> >>> @@ -398,10 +400,11 @@ static void >>> hypercall_page_initialise_ring1_kernel(void > *hypercall_page) >>> * calling it. >>> */ >>> p = (char *)(hypercall_page + (__HYPERVISOR_iret * 32)); >>> -*

Re: [Xen-devel] [PATCH] xen/x86: Improve hypercall page writing

2016-12-20 Thread Andrew Cooper
On 20/12/2016 07:48, Jan Beulich wrote: > >> @@ -398,10 +400,11 @@ static void >> hypercall_page_initialise_ring1_kernel(void *hypercall_page) >> * calling it. >> */ >> p = (char *)(hypercall_page + (__HYPERVISOR_iret * 32)); >> -*(u8 *)(p+ 0) = 0x50;/* push %eax */ >> -

Re: [Xen-devel] [PATCH] xen/x86: Improve hypercall page writing

2016-12-19 Thread Jan Beulich
>>> On 19.12.16 at 17:55, wrote: > Use memcpy() rather than individual writes with explicit casts. The > __builtin_memcpy() wrapper does a better job at combining adjacent writes into > a larger word size. > > This results in better generated assembly. No functional change. I don't think gener

Re: [Xen-devel] [PATCH] xen/x86: Improve hypercall page writing

2016-12-19 Thread Tian, Kevin
> From: Andrew Cooper [mailto:andrew.coop...@citrix.com] > Sent: Tuesday, December 20, 2016 12:55 AM > > Use memcpy() rather than individual writes with explicit casts. The > __builtin_memcpy() wrapper does a better job at combining adjacent writes into > a larger word size. > > This results in

Re: [Xen-devel] [PATCH] xen/x86: Improve hypercall page writing

2016-12-19 Thread Boris Ostrovsky
On 12/19/2016 11:55 AM, Andrew Cooper wrote: > Use memcpy() rather than individual writes with explicit casts. The > __builtin_memcpy() wrapper does a better job at combining adjacent writes into > a larger word size. > > This results in better generated assembly. No functional change. > > Signed

[Xen-devel] [PATCH] xen/x86: Improve hypercall page writing

2016-12-19 Thread Andrew Cooper
Use memcpy() rather than individual writes with explicit casts. The __builtin_memcpy() wrapper does a better job at combining adjacent writes into a larger word size. This results in better generated assembly. No functional change. Signed-off-by: Andrew Cooper --- CC: Jan Beulich CC: Jun Naka