Messages in this thread |  | | | Date | Thu, 1 Mar 2012 15:02:56 -0800 | | From | Andrew Morton <> | | Subject | Re: [PATCH 1/2] atomic: Allow atomic_inc_not_zero to be overridden |
| |
On Thu, 1 Mar 2012 18:09:53 +1100 Anton Blanchard <anton@samba.org> wrote:
> > We want to implement a ppc64 specific version of atomic_inc_not_zero > so wrap it in an ifdef to allow it to be overridden. > > Signed-off-by: Anton Blanchard <anton@samba.org> > --- > > Index: linux-build/include/linux/atomic.h > =================================================================== > --- linux-build.orig/include/linux/atomic.h 2012-02-11 14:59:23.284714257 +1100 > +++ linux-build/include/linux/atomic.h 2012-02-11 15:01:14.894764555 +1100 > @@ -24,7 +24,9 @@ static inline int atomic_add_unless(atom > * Atomically increments @v by 1, so long as @v is non-zero. > * Returns non-zero if @v was non-zero, and zero otherwise. > */ > +#ifndef atomic_inc_not_zero > #define atomic_inc_not_zero(v) atomic_add_unless((v), 1, 0) > +#endif
Please merge this via the ppc tree?
And let's ask the hexagon maintainers to take a look at the definition in arch/hexagon/include/asm/atomic.h. I assume that it can be removed, but that might cause problems with files which include asm/atomic.h directly. I have found two such files in non-arch code and have queued fixes. There are no such files in arch/hexagon code, so I think it's safe to zap the hexagon definition of atomic_inc_not_zero().
> +static __inline__ int atomic_inc_not_zero(atomic_t *v)
Curious: is there a technical reason why ppc uses "__inline__" rather than "inline"?
|  |