Re: [PATCH] metag: Only define atomic_dec_if_positive conditionally

From: James Hogan
Date: Fri Oct 07 2016 - 16:33:45 EST


On Fri, Oct 07, 2016 at 10:40:59AM -0700, Guenter Roeck wrote:
> The definition of atomic_dec_if_positive() assumes that
> atomic_sub_if_positive() exists, which is only the case if
> metag specific atomics are used. This results in the following
> build error when trying to build metag1_defconfig.
>
> kernel/ucount.c: In function 'dec_ucount':
> kernel/ucount.c:211: error:
> implicit declaration of function 'atomic_sub_if_positive'
>
> Moving the definition of atomic_dec_if_positive() into the metag
> conditional code fixes the problem.
>
> Signed-off-by: Guenter Roeck <linux@xxxxxxxxxxxx>
> ---
> arch/metag/include/asm/atomic.h | 3 +--
> 1 file changed, 1 insertion(+), 2 deletions(-)
>
> diff --git a/arch/metag/include/asm/atomic.h b/arch/metag/include/asm/atomic.h
> index 470e365f04ea..8ff0a70865f6 100644
> --- a/arch/metag/include/asm/atomic.h
> +++ b/arch/metag/include/asm/atomic.h
> @@ -39,11 +39,10 @@
> #define atomic_dec(v) atomic_sub(1, (v))
>
> #define atomic_inc_not_zero(v) atomic_add_unless((v), 1, 0)
> +#define atomic_dec_if_positive(v) atomic_sub_if_positive(1, v)
>
> #endif
>
> -#define atomic_dec_if_positive(v) atomic_sub_if_positive(1, v)
> -
> #include <asm-generic/atomic64.h>
>
> #endif /* __ASM_METAG_ATOMIC_H */

Applied, thanks Guenter!

Cheers
James

Attachment: signature.asc
Description: Digital signature