On 03/21/2014 11:38 PM, beh...@converseincode.com wrote:
> From: Behan Webster <beh...@converseincode.com>
> 
> Fix uninitialized return code in default case in cmpxchg-local.h
> 
> This patch fixes the code to prevent an uninitialized return value that is 
> detected
> when compiling with clang. The bug produces numerous warnings when compiling 
> the
> Linux kernel with clang.
> 
> Signed-off-by: Behan Webster <beh...@converseincode.com>
> Signed-off-by: Mark Charlebois <charl...@gmail.com>
> ---
>  include/asm-generic/cmpxchg-local.h | 1 +
>  1 file changed, 1 insertion(+)
> 
> diff --git a/include/asm-generic/cmpxchg-local.h 
> b/include/asm-generic/cmpxchg-local.h
> index d8d4c89..4c41bb8 100644
> --- a/include/asm-generic/cmpxchg-local.h
> +++ b/include/asm-generic/cmpxchg-local.h
> @@ -41,6 +41,7 @@ static inline unsigned long 
> __cmpxchg_local_generic(volatile void *ptr,
>               break;
>       default:
>               wrong_size_cmpxchg(ptr);
> +             prev = 0;
>       }
>       raw_local_irq_restore(flags);
>       return prev;
> 

Shouldn't this be a build time assert (__compiletime_error())?

        -hpa

--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majord...@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Please read the FAQ at  http://www.tux.org/lkml/

Reply via email to