Re: [Xen-devel] [PATCH v6 02/18] Add cmpxchg16b support for x86-64

2015-09-08 Thread Wu, Feng
> -Original Message- > From: Jan Beulich [mailto:jbeul...@suse.com] > Sent: Tuesday, September 08, 2015 5:19 PM > To: Wu, Feng > Cc: Andrew Cooper; xen-devel@lists.xen.org; Keir Fraser > Subject: RE: [PATCH v6 02/18] Add cmpxchg16b support for x86-64 > > >>> On 08.09.15 at 10:57, wrote:

Re: [Xen-devel] [PATCH v6 02/18] Add cmpxchg16b support for x86-64

2015-09-08 Thread Jan Beulich
>>> On 08.09.15 at 10:57, wrote: > >> -Original Message- >> From: Jan Beulich [mailto:jbeul...@suse.com] >> Sent: Tuesday, September 08, 2015 4:52 PM >> To: Wu, Feng >> Cc: Andrew Cooper; xen-devel@lists.xen.org; Keir Fraser >> Subject: RE: [PATCH v6 02/18] Add cmpxchg16b support for x86

Re: [Xen-devel] [PATCH v6 02/18] Add cmpxchg16b support for x86-64

2015-09-08 Thread Wu, Feng
> -Original Message- > From: Jan Beulich [mailto:jbeul...@suse.com] > Sent: Tuesday, September 08, 2015 4:52 PM > To: Wu, Feng > Cc: Andrew Cooper; xen-devel@lists.xen.org; Keir Fraser > Subject: RE: [PATCH v6 02/18] Add cmpxchg16b support for x86-64 > > >>> On 08.09.15 at 09:37, wrote:

Re: [Xen-devel] [PATCH v6 02/18] Add cmpxchg16b support for x86-64

2015-09-08 Thread Jan Beulich
>>> On 08.09.15 at 09:37, wrote: > Thanks for your suggestion. How about this? > > #define cmpxchg16b(ptr,o,n)\ > ( ({ ASSERT(((unsigned long)ptr & 0xF) == 0); }), \ > BUILD_BUG_ON(sizeof(*o) != sizeof(__uint128_t)),

Re: [Xen-devel] [PATCH v6 02/18] Add cmpxchg16b support for x86-64

2015-09-08 Thread Wu, Feng
> -Original Message- > From: Jan Beulich [mailto:jbeul...@suse.com] > Sent: Monday, September 07, 2015 6:37 PM > To: Wu, Feng > Cc: Andrew Cooper; xen-devel@lists.xen.org; Keir Fraser > Subject: RE: [PATCH v6 02/18] Add cmpxchg16b support for x86-64 > > >>> On 06.09.15 at 08:32, wrote:

Re: [Xen-devel] [PATCH v6 02/18] Add cmpxchg16b support for x86-64

2015-09-07 Thread Jan Beulich
>>> On 06.09.15 at 08:07, wrote: >> From: Jan Beulich [mailto:jbeul...@suse.com] >> Sent: Friday, September 04, 2015 10:23 PM >> >>> On 25.08.15 at 03:57, wrote: >> > --- >> > v6: >> > - Fix a typo >> > >> > v5: >> > - Change back the parameters of __cmpxchg16b() to __uint128_t * >> > - Remove po

Re: [Xen-devel] [PATCH v6 02/18] Add cmpxchg16b support for x86-64

2015-09-07 Thread Jan Beulich
>>> On 06.09.15 at 08:32, wrote: >> From: Wu, Feng >> Sent: Sunday, September 06, 2015 2:07 PM >> If that is the case, what about the changes below? >> >> #define cmpxchg16b(ptr,o,n) >> \ >> ASSERT((unsigned long)ptr & 0xF == 0); >> \ >> ASSERT(sizeof(*o) == sizeof(__uint128_t)) >> \ >>

Re: [Xen-devel] [PATCH v6 02/18] Add cmpxchg16b support for x86-64

2015-09-07 Thread Jan Beulich
>>> On 06.09.15 at 08:07, wrote: >> From: Jan Beulich [mailto:jbeul...@suse.com] >> Sent: Friday, September 04, 2015 10:23 PM >> >>> On 25.08.15 at 03:57, wrote: >> > --- >> > v6: >> > - Fix a typo >> > >> > v5: >> > - Change back the parameters of __cmpxchg16b() to __uint128_t * >> > - Remove po

Re: [Xen-devel] [PATCH v6 02/18] Add cmpxchg16b support for x86-64

2015-09-05 Thread Wu, Feng
> -Original Message- > From: Wu, Feng > Sent: Sunday, September 06, 2015 2:07 PM > To: Jan Beulich > Cc: Andrew Cooper; xen-devel@lists.xen.org; Keir Fraser; Wu, Feng > Subject: RE: [PATCH v6 02/18] Add cmpxchg16b support for x86-64 > > > > > -Original Message- > > From: Jan Be

Re: [Xen-devel] [PATCH v6 02/18] Add cmpxchg16b support for x86-64

2015-09-05 Thread Wu, Feng
> -Original Message- > From: Jan Beulich [mailto:jbeul...@suse.com] > Sent: Friday, September 04, 2015 10:23 PM > To: Wu, Feng > Cc: Andrew Cooper; xen-devel@lists.xen.org; Keir Fraser > Subject: Re: [PATCH v6 02/18] Add cmpxchg16b support for x86-64 > > >>> On 25.08.15 at 03:57, wrote:

Re: [Xen-devel] [PATCH v6 02/18] Add cmpxchg16b support for x86-64

2015-09-04 Thread Jan Beulich
>>> On 25.08.15 at 03:57, wrote: > --- a/xen/include/asm-x86/x86_64/system.h > +++ b/xen/include/asm-x86/x86_64/system.h > @@ -6,6 +6,34 @@ > (unsigned long)(n),sizeof(*(ptr > > /* > + * Atomic 16 bytes compare and exchange. Compare OLD with MEM, if > +

Re: [Xen-devel] [PATCH v6 02/18] Add cmpxchg16b support for x86-64

2015-09-04 Thread Jan Beulich
>>> On 25.08.15 at 03:57, wrote: > This patch adds cmpxchg16b support for x86-64, so software > can perform 128-bit atomic write/read. > > CC: Keir Fraser > CC: Jan Beulich > CC: Andrew Cooper > Signed-off-by: Feng Wu > --- > v6: > - Fix a typo > > v5: > - Change back the parameters of __cmp

[Xen-devel] [PATCH v6 02/18] Add cmpxchg16b support for x86-64

2015-08-24 Thread Feng Wu
This patch adds cmpxchg16b support for x86-64, so software can perform 128-bit atomic write/read. CC: Keir Fraser CC: Jan Beulich CC: Andrew Cooper Signed-off-by: Feng Wu --- v6: - Fix a typo v5: - Change back the parameters of __cmpxchg16b() to __uint128_t * - Remove pointless cast for 'ptr'