From: Julien Grall <julien.grall@arm.com>
To: Corneliu ZUZU <czuzu@bitdefender.com>, xen-devel@lists.xen.org
Cc: Stefano Stabellini <sstabellini@kernel.org>
Subject: Re: [PATCH v5 1/7] asm-arm/atomic.h: fix arm32|arm64 macros duplication
Date: Fri, 15 Jul 2016 11:44:01 +0100 [thread overview]
Message-ID: <5788BE71.7070507@arm.com> (raw)
In-Reply-To: <1468579299-19731-1-git-send-email-czuzu@bitdefender.com>
On 15/07/16 11:41, Corneliu ZUZU wrote:
> Move duplicate macros between asm-arm/arm32/atomic.h and asm-arm/arm64/atomic.h
> to asm-arm/atomic.h.
>
> Signed-off-by: Corneliu ZUZU <czuzu@bitdefender.com>
> Reviewed-by: Stefano Stabellini <sstabellini@kernel.org>
Acked-by: Julien Grall <julien.grall@arm.com>
Regards,
> ---
> Changed since v4:
> * remove paragraph(s) from README.LinuxPrimitives file
> * no empty line additions
> ---
> xen/arch/arm/README.LinuxPrimitives | 8 ++++++++
> xen/include/asm-arm/arm32/atomic.h | 13 -------------
> xen/include/asm-arm/arm64/atomic.h | 13 -------------
> xen/include/asm-arm/atomic.h | 13 +++++++++++++
> 4 files changed, 21 insertions(+), 26 deletions(-)
>
> diff --git a/xen/arch/arm/README.LinuxPrimitives b/xen/arch/arm/README.LinuxPrimitives
> index 3115f51..028e872 100644
> --- a/xen/arch/arm/README.LinuxPrimitives
> +++ b/xen/arch/arm/README.LinuxPrimitives
> @@ -23,6 +23,10 @@ atomics: last sync @ v3.16-rc6 (last commit: 8715466b6027)
>
> linux/arch/arm64/include/asm/atomic.h xen/include/asm-arm/arm64/atomic.h
>
> +The following functions were taken from Linux:
> + atomic_add(), atomic_add_return(), atomic_sub(), atomic_sub_return(),
> + atomic_cmpxchg(), __atomic_add_unless()
> +
> ---------------------------------------------------------------------
>
> mem*: last sync @ v3.16-rc6 (last commit: d875c9b37240)
> @@ -91,6 +95,10 @@ atomics: last sync @ v3.16-rc6 (last commit: 030d0178bdbd)
>
> linux/arch/arm/include/asm/atomic.h xen/include/asm-arm/arm32/atomic.h
>
> +The following functions were taken from Linux:
> + atomic_add(), atomic_add_return(), atomic_sub(), atomic_sub_return(),
> + atomic_cmpxchg(), __atomic_add_unless()
> +
> ---------------------------------------------------------------------
>
> mem*: last sync @ v3.16-rc6 (last commit: d98b90ea22b0)
> diff --git a/xen/include/asm-arm/arm32/atomic.h b/xen/include/asm-arm/arm32/atomic.h
> index 7ec712f..c03eb68 100644
> --- a/xen/include/asm-arm/arm32/atomic.h
> +++ b/xen/include/asm-arm/arm32/atomic.h
> @@ -147,19 +147,6 @@ static inline int __atomic_add_unless(atomic_t *v, int a, int u)
> return oldval;
> }
>
> -#define atomic_xchg(v, new) (xchg(&((v)->counter), new))
> -
> -#define atomic_inc(v) atomic_add(1, v)
> -#define atomic_dec(v) atomic_sub(1, v)
> -
> -#define atomic_inc_and_test(v) (atomic_add_return(1, v) == 0)
> -#define atomic_dec_and_test(v) (atomic_sub_return(1, v) == 0)
> -#define atomic_inc_return(v) (atomic_add_return(1, v))
> -#define atomic_dec_return(v) (atomic_sub_return(1, v))
> -#define atomic_sub_and_test(i, v) (atomic_sub_return(i, v) == 0)
> -
> -#define atomic_add_negative(i,v) (atomic_add_return(i, v) < 0)
> -
> #endif /* __ARCH_ARM_ARM32_ATOMIC__ */
> /*
> * Local variables:
> diff --git a/xen/include/asm-arm/arm64/atomic.h b/xen/include/asm-arm/arm64/atomic.h
> index b49219e..bce38d4 100644
> --- a/xen/include/asm-arm/arm64/atomic.h
> +++ b/xen/include/asm-arm/arm64/atomic.h
> @@ -113,8 +113,6 @@ static inline int atomic_cmpxchg(atomic_t *ptr, int old, int new)
> return oldval;
> }
>
> -#define atomic_xchg(v, new) (xchg(&((v)->counter), new))
> -
> static inline int __atomic_add_unless(atomic_t *v, int a, int u)
> {
> int c, old;
> @@ -125,17 +123,6 @@ static inline int __atomic_add_unless(atomic_t *v, int a, int u)
> return c;
> }
>
> -#define atomic_inc(v) atomic_add(1, v)
> -#define atomic_dec(v) atomic_sub(1, v)
> -
> -#define atomic_inc_and_test(v) (atomic_add_return(1, v) == 0)
> -#define atomic_dec_and_test(v) (atomic_sub_return(1, v) == 0)
> -#define atomic_inc_return(v) (atomic_add_return(1, v))
> -#define atomic_dec_return(v) (atomic_sub_return(1, v))
> -#define atomic_sub_and_test(i, v) (atomic_sub_return(i, v) == 0)
> -
> -#define atomic_add_negative(i,v) (atomic_add_return(i, v) < 0)
> -
> #endif
> /*
> * Local variables:
> diff --git a/xen/include/asm-arm/atomic.h b/xen/include/asm-arm/atomic.h
> index 29ab265..18cb2e1 100644
> --- a/xen/include/asm-arm/atomic.h
> +++ b/xen/include/asm-arm/atomic.h
> @@ -138,6 +138,19 @@ static inline void _atomic_set(atomic_t *v, int i)
> # error "unknown ARM variant"
> #endif
>
> +#define atomic_inc(v) atomic_add(1, v)
> +#define atomic_dec(v) atomic_sub(1, v)
> +
> +#define atomic_inc_and_test(v) (atomic_add_return(1, v) == 0)
> +#define atomic_dec_and_test(v) (atomic_sub_return(1, v) == 0)
> +#define atomic_inc_return(v) (atomic_add_return(1, v))
> +#define atomic_dec_return(v) (atomic_sub_return(1, v))
> +#define atomic_sub_and_test(i, v) (atomic_sub_return(i, v) == 0)
> +
> +#define atomic_add_negative(i,v) (atomic_add_return(i, v) < 0)
> +
> +#define atomic_xchg(v, new) (xchg(&((v)->counter), new))
> +
> #endif /* __ARCH_ARM_ATOMIC__ */
> /*
> * Local variables:
>
--
Julien Grall
_______________________________________________
Xen-devel mailing list
Xen-devel@lists.xen.org
https://lists.xen.org/xen-devel
next prev parent reply other threads:[~2016-07-15 10:44 UTC|newest]
Thread overview: 11+ messages / expand[flat|nested] mbox.gz Atom feed top
2016-07-15 10:41 [PATCH v5 0/7] <asm/atomic.h> adjustments Corneliu ZUZU
2016-07-15 10:41 ` [PATCH v5 1/7] asm-arm/atomic.h: fix arm32|arm64 macros duplication Corneliu ZUZU
2016-07-15 10:44 ` Julien Grall [this message]
2016-07-15 10:42 ` [PATCH v5 2/7] asm-x86/atomic.h: minor: proper atomic_inc_and_test() placement Corneliu ZUZU
2016-07-15 10:42 ` [PATCH v5 3/7] asm-arm/atomic.h: reorder macros to match x86-side Corneliu ZUZU
2016-07-15 10:44 ` [PATCH v5 5/7] xen/atomic.h: fix: make atomic_read() param const Corneliu ZUZU
2016-07-15 10:44 ` [PATCH v5 4/7] asm/atomic.h: common prototyping (add xen/atomic.h) Corneliu ZUZU
2016-07-15 10:46 ` [PATCH v5 6/7] asm-arm/atomic.h: atomic_{inc, dec}_return: macros to inline functions Corneliu ZUZU
2016-07-15 10:46 ` [PATCH v5 7/7] asm/atomic.h: implement missing and add common prototypes Corneliu ZUZU
2016-07-15 13:05 ` [PATCH v5 0/7] <asm/atomic.h> adjustments Andrew Cooper
2016-07-15 14:11 ` Corneliu ZUZU
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=5788BE71.7070507@arm.com \
--to=julien.grall@arm.com \
--cc=czuzu@bitdefender.com \
--cc=sstabellini@kernel.org \
--cc=xen-devel@lists.xen.org \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).